Allowing configs to filter Op, Procedural, and RenderMan shader submenus.

ParameterisedHolder menus and RenderMan the shader menu take an optional regex or fnmatch string for filtering. Addresses #316.
Typing Escape in a submenu closes all parent menus as well.
added 'cmd' parameter to allow arb python calls to be made once script is loaded. renamed 'scriptNode' to 'script' to match name in default gui scripteditor
Merge pull request #350 from bentoogood/screenGrabApp

added 'cmd' parameter to allow arb python calls to be made once script is loaded
Fixed the broken test case: GafferImageTest.FormatTest.testHashChanged
The GafferImage::FormatPlug::hash() method will now lookup the value of the default hash from the script node if the result of getValue() is an empty box.
Merge pull request #352 from goddardl/FormatHash

Fixed a broken test case within GafferImageTest.FormatTest.
Prefixed all typenames with the library namespace.

This prevents clashes with identically named types in IECore. It also necessitated changing all the default names for newly created GraphComponents, and fixes various places in the bindings where it was assumed that the typename was the same as the python class name.

Fixes #330.
Prevented non-serialisable plugs from being promoted to Box level.

It would only fail later because the promoted plug wasn't serialised. You could argue that we should remove the non-serialisability when promoting, but nodes make non-serialisable for good reason, so I think it's best that we respect their wishes.

Fixes #347.
added missing return
Merge pull request #346 from andrewkaufman/filterableSubmenus

Allowing configs to filter Op, Procedural, and RenderMan shader submenus
Merge pull request #349 from andrewkaufman/escapeClosesMenus

Typing Escape in a submenu closes all parent menus as well.
Improved GraphComponent::defaultName documentation.
Merge pull request #355 from johnhaddon/defaultNames

Prefixed all typenames with the library namespace.
Fixed a typo.
Added a method to the ChannelMaskPlug which removes channels from a list of channel names until the list contains only channels with a unique channel index.
Added test cases for the above.
Added the ImageStats node along with it's test cases.
Removed an invalid sanity check within GafferImage::ImagePlug.
Made suggested changes.
Made the plug accessors public.
Made minor changes to the hash function.
Added an early-out to the compute method.
Fixed serialisation of the FormatPlug.