Fixed numerous struct vs class mismatches.
Removed unsigned < 0 checks.

They can never be true.
Removed unecessary use of boost::ref().

Clang didn't like it.
Made SGIImageReader padding fields public.

Clang doesn't like private fields which are never accessed.
Added necessary Parameter includes to Writer bindings.

Without, them, the compiler can't know that it is able to call intrusive_ptr_release (it doesn't know that those classes derive from RefCounted until more than just a forward declaration is available).
Fixed several IECorePython::repr() implementations.

They were being declared static, despite implementing a function we want to export.
Fixed Imath::Color and Imath::Matrix bindings for clang.

It was getting upset about multiple unsequenced modifications to self - putting each def in its own statement fixes that.
Fixed UniformRandomPointDistributionOpBinding.

It was trying to overload the density function but with the wrong signature.
Fixed Shader::Setup for compilation with Clang.

Clang wanted to synthesize the destructor but then got upset because it didn't know that MemberData derived from RefCounted yet, resulting in the following error :

use of undeclared identifier 'intrusive_ptr_release'

This is fixed by declaring the destructor explicitly and implementing it in the .cpp file where MemberData is defined fully.