Fixed MurmurHash bug where empty strings had no effect on a hash.

The terminating null character is now considered to be part of the string. This is consistent with the general principle that the low level MurmurHash code should hash the contents of memory (with type information provided only to allow byte order to be dealt with properly).

It could be argued that the other array hashes should also include some sort of terminator to allow empty arrays to have some effect on the hash, but I'm not sure that that's right. At the low level I would consider that they shouldn't, because then they represent more than what's there in memory, and at the high level with VectorData we have additional information to ensure the hash changes anyway.
Implemented per-vertex Cs for IECoreGL::PointsPrimitive.
Merge pull request #78 from johnhaddon/stringHashBug

Fixed MurmurHash bug where empty strings had no effect on a hash.
Merge pull request #79 from johnhaddon/perVertexPointColors

Implemented per-vertex Cs for IECoreGL::PointsPrimitive.
Fix mantra ProceduralPrimitive Invalid Query.

In hdk versions >= 12.1 using the VRAY_Procedural import method in
the constructor causes a non-fatal mantra runtime error:
    Invalid query -- null handle
Merge pull request #83 from dmar/fix-mantra-procedural-invalid-query

Fix mantra ProceduralPrimitive Invalid Query.
Added a UT_Cache for ObjectPools.

UT_ObjectPoolCache creates a Houdini style cache control for ObjectPools. The plugin creates the default UT_ObjectPoolCache which wraps the ObjectPool::defaultObjectPool() and adds it to Houdini's Cache Manager UI.

Fixes #40.
Moving up some lines that define the test environment before they are copied to the python test environment.
Improved precision of CameraController operations.

Raster positions are now represented as V2f rather than V2i, providing subpixel accuracy.
Fixed erroneous compute on SceneShape outputObjects.

A Maya bug causes mesh attributes to compute on scene open, even when nothing should be
pulling on them. While dynamic attributes can work around this issue for single meshes,
arrays of meshes suffer from the erroneous compute as either static or dynamic attributes.

We work around the problem by adding a PostLoadCallback if the node was created while the
scene is being read from disk. This callback is used to short circuit the compute which
was triggered on scene open. Since the compute may have actually been necessary, we use
this dummy dependency attribute to dirty the output object attributes immediately following
load. At this point the callback deletes itself, and the newly dirtied output objects will
re-compute if something was actually pulling on them.
Re-arranging OBJ_SceneCacheNode parameter functions.

This commit is just organizational, to make adding folders easier in the next commit
Adding MainSwitcher (tabbed folders)

Placed all SceneCache parms in the Main tab
Added Output tab containing translate, rotate, and scale.

These are just for user visibility of what the node is doing. They are updated during cook, and cannot be modified by users.
Merge pull request #86 from ldmoser/maya2014

Fixing maya python test environment in SConstruct
Merge pull request #87 from johnhaddon/cameraControllerPrecision

Improved precision of CameraController operations.
Using default python expressions on output parms.

These parms no longer require cooks (and are correctly marked a no-cook parms), as that is not a supported behaviour in Houdini. They instead evaluate python expressions by default. I originally tried using hscript origin(), but ran into issues with double transformations on the geo nodes when expanding in SubNetworked mode. Hopefully python isn't too slow...
Merge pull request #84 from andrewkaufman/exposeTransform

Expose transform on OBJ SceneCache nodes
Merge pull request #88 from andrewkaufman/mayaSceneShapePhantomCompute

Fixed erroneous compute on SceneShape outputObjects.
Passing name in contructor and removed default pool
Merge pull request #85 from andrewkaufman/cacheManager

Added a UT_Cache for ObjectPools