Removed unwanted horizontal padding from frameless Buttons.

For some reason QPushButton::sizeHint() always adds on an extra 4 pixels in the horizontal direction, so we have to take them off again using the stylesheet.
Adjusted layouts to account for Button width bugfix.
Fixed bug where Shader::NetworkBuilder removed renderer prefixes.

This meant that all shader networks would have shaders of type "shader", which would trigger warnings from the viewport GL renderer.
Made ShaderAssignment use the shader type as an attribute name.

RenderManShader assignments are now stored as an "ri:surface" attribute, arnold shaders as "ai:surface" etc. This allows shaders for multiple renderer types to be assigned and to peacefully coexist side by side in the attributes.

Fixes #270.
Merge pull request #1035 from johnhaddon/shaderTypes

Better management of different shader types
Merge pull request #1004 from johnhaddon/buttonSize

Button size
Merge remote-tracking branch 'upstream/master'
Merge branch 'master' into atomo