Fixed a bug in ImageProcessor that was causing a segfault when the node has an output that is not an ImagePlug.
Added test cases for the ImageTransform node.
Modified the image processor to prevent the code from wandering into python-land.
Fixed a bug with the reformat node where it wasn't hashing the input correctly.
Added a test cases for the Reformat node which tests the dirty propagation and the format hash.
* Refactored GafferImage::Filter to have a better interface whilst removing the need for the construct() method.
* Changed the Sampler to use the new Filter interface. Filters now have to be passed into the Sampler's constructor.
* Fixed bugs in the Sampler that:
	- Caused incorrect results with negative sample areas.
	- Samples required to compute a filtered sample were being clamped to the sample area even when the resulting sample was inside.
* Modified the Reformat node to use the new Filter and sampler interface.
* Updated bindings for the Sampler and Filter classes.
* Added filtering support for the ImageTransform node.
Added a shared look-up table for the filter class.
 * Chaged the filters to use floats after running some tests and finding out that the use of doubles made no difference to the results.
 * Fixed a few bugs with the sampler and refactored after doing some profiling.
Added the new image transform node with sub-pixel filtering.
Added a GIL release within ExecutableBinding::execute to stop a deadlock when writing the output of the ImageTransform to disk.
Made the filter's constructor private.