Made RunTimeTyped::baseTypeIds and derivedTypeIds thread safe

Previously they were reading/writing to global maps without a mutex, which was causing problems in IECoreGL...
Merge pull request #185 from davidsminor/runTimeTypedTypeIdsThreadSafety

Made RunTimeTyped::baseTypeIds and derivedTypeIds thread safe
Adding mainScene filename to error message in expandLink
Deleting normals on subdiv meshes converted from Houdini.

Subdivision meshes should not have normals, but they tend to get added accidentally when dealing with many meshes in a single SOP, as that would extend the normals attribute to all meshes. We force N to be excluded when converting subdiv (catmullClark) meshes.
Merge pull request #187 from andrewkaufman/deleteNormalsOnSubdiv

Deleting normals on subdiv meshes converted from Houdini.
adding quotes
Merge pull request #186 from andrewkaufman/expandLinkErrorMessage

Adding mainScene filename to error message in expandLink
Added IECoreGL::Selector::push/popIDShader()

ID shaders weren't being reverted correctly in certain situations involving ribbon curves, so Selector::loadIDShader() has been deprecated and replaced by Selector::pushIDShader(), which can be reverted using Selector::popIDShader()
Added IECoreNuke::DeepImageReader.
Allows any deep image type registered to cortex to be read into nuke.
Merge pull request #188 from davidsminor/glCurveSelection

Added IECoreGL::Selector::push/popIDShader()
Merge pull request #189 from goddardl/NativeDeepReader

IECoreNuke::DeepImageReader
Added SceneCache Transform SOP.

This node applies transformations from a SceneCache file directly on the points and primitives at the SOP level. In "Name" mode, it applies a different transformation per named shape, using the name as a relative path to the SceneCache file and root. In "Root" mode, it applies a single transformation from the SceneCache file to the entire input.
Merge pull request #183 from andrewkaufman/sccXform

Added SceneCache Transform SOP
Moved the inplementation of IECore::CamelCase::toSpace and IECore::CamelCase::fromSpaced from the inline file to a source file.
Bumped version to 8.0.0-b5 and updated Changes file.
Preventing double cooking in HoudiniScene::scene( path )

Previously the scene method was not using the default cook time for a portion of its calculations, resulting in double cooking of SOPs which contain a flattened hierarchy. Note that the additional test doesn't actually demonstrate the issue, as it is only apparent in an interactive session, because the viewport forces extra cooks as well. I've verified the cook count is appropriate in interactive mode, and added the test just to be sure no other extra cooks are being caused by the scene method.
Merge pull request #190 from goddardl/camelCase

Camel Case
made LinkedScene( SceneInterfacePtr ) support writable scenes
Merge pull request #191 from andrewkaufman/houdiniSceneDoubleCook

Preventing double cooking in HoudiniScene::scene( path )
Fixed SceneCache from IndexedIO bug, added a test