Changing SceneInterface methods readTags and hasTags with tag filter parameter.

- Added an enum in SceneInterface with bit mask values: LocalTag, DescendentTag and AncestorTag and EveryTag (for convenience).
- Changed the default behaviour of the readTags and hasTags, which would return all tags and now it defaults to LocalTag to be more consistent with the other read functions and because the other tags may not be supported by some implementations of SceneInterface (like MayaScene or HoudiniScene).
- Revisited LinkedScene behaviour and now, tags that are set in the main scene are available as ancestor tags if reading beyound link locations.
- Reviewed and added tests.
Adding HoudiniScene::readWorldTransform and readWorldTransformAsMatrix

These can be used to get the world transform at the specified location at the correct time.
Avoiding seg fault when attribute data is null
Adding wrapper class for SceneCacheNodes and binding scene() method
Using IECore::msg rather than cerr
Preventing returning true if hasTag was passed zeroed filter.
Replacing Descendent to Descendant to please picky people.
Preventing readTags to raise if filter == 0.
Fixing issues in HoudiniScene when pointing to broken SOPs
adding todo
Merge pull request #163 from andrewkaufman/brokenSopBug

Fixing issues in HoudiniScene when pointing to broken SOPs
Merge pull request #161 from andrewkaufman/houdiniSceneWorldMatrix

HoudiniScene world matrix
Replacing setNode/getNode with sceneNode
Merge pull request #162 from andrewkaufman/sceneNodeInterfaceBinding

Adding wrapper class for SceneCacheNodes and binding scene() method
Updating changes for 8.0.0-a23
Added __USE_ISOC99 #define to mac builds.

This is necessary to work around problems with boost/numeric/interval.hpp. Formerly we had been requiring that people building on OS X did this manually, whereas the Gaffer build does it automatically - this brings the two into line.
adding include for gcc 4.4
Fixed IECoreArnold for TBB 4 on OS X.

TBB was including headers which #defined MIN/MAX, which then clashed with the arnold inlines functions of the same name in ai_types.h. The solution is to make sure that ai.h is included before anything else (except boost python, which has its own reasons for wanting to be first).
Merge pull request #164 from johnhaddon/osxPublicBuildFixes

OSX public build fixes
Fixed multiple transform bug in Houdini Scene. Added test case for it. (ticket #4917)