HOW DO I ASSIGN DIFFERENT SHADING GROUPS TO THE SAME MESH?? IS THIS A GOOD WAY TO PROCEED?
Just to throw in another possible way that you can do this, while keeping a relatively simple node network in the hypershade, you can use ID maps. I've only done this whilst having 2 different materials on one object, but it means you have 1 object with 1 UV map (therefore 1 texture map), but by using and ID map you can assign different types of shaders to the same object.
e.g, say you have an object of a bottle with 1 UV map. You have made a texture map for the bottle, and you want the label to be a lambert, whilst the glass part of the bottle is a phong. You can simply make these 2 different materials with the same texture map applied, then using an ID map (a black and white mask, with black being where you want one material to show, and white being the other material) you can blend between the 2 materials using a blend utility node.
If anyones interested in this technique, let me know and I'll draw up a diagram of how it works. I find it a very neat way of doing this. Sometimes its easiest just to select faces, but for most of the time the different parts of your textures will not fit neatly onto where you can just select faces and apply them.
p.s, this is an especially useful way if you use mental ray, as MR can have problems with Maya's layered shaders.