sorry guys been sorting my computer out or i would have shown up earlier, anyway i bought a powerbook instead

, just skimmed the entire thread and will try and answer some questions and give some tips.
firstly, maya saving before crashing, yes it happens flawlessly nearly every single time maya crashes, i havn't lost a minutes work for months.... but only on linux!

windows versions try to, but rarely succeed, its worth looking for the files just in case, they are marked with the time before the file extention.
rigging, cant answer all the questions here, but I would advise people to generally not to try and duplicate joints with controls from one side to anouther, you have to select exactly the right controls, and use the right duplicate options, then when you scale to the negative value, usually everything goes wrong because the controls are set up for positive values.
work arounds can include exporting the skeleten, importing it (in its entireity, this also ensures yoou get all the controls) mirroring from the top and plugging stuff in like that, still negative values can be pesky but often arn't so much of a problem.
neat way is to make a skeleton first, mirror it, then stick the entire thing in a lreference layer, change the skeleton colour to grey using the layer attributes thing, (yes this can change bone colours, but isn't a true bone colouring option)
then use the snap to option to redraw all the bones over the top of the last, it doesn't take long at all like this. you get all your bones set to zero, no negative values, ik them seperatly, its a little slower but makes life better in the long run i have found.
Global, your rig is fine, but i do notice you are missing something important, between the base of the spine and the legs needs to be anouther bone, or you will never be able to make him rotate his pelvis,
no sexy walks or shaking his arse
the ik/fk blending trouble you have, swapping between this should have no affect on skinning, check the bones are not rotating down the axis of the bones, restrict it. as this will screw up your skins.
as for making nice controls, the best way is to create NURBs curves, using the spline tools, if you are parent contraining the to your rig like you should (dont parent, always keep them in seperate directories) you can change the display overides to make them different colours, theres a nice selection of different nurbs curves already available at highend3d, if i get time i will post the link