Merge ComputeShader into master.
Shared lib support; improved offline compiler.

The HLSL cross-compiler library can now be built as a shared lib by
using -DBUILD_SHARED_LIBS=1 on cmake command line.

Organised certain files into include/ src/ src/internal_includes and
offline/

Offline compiler can now:
-write reflection info to file. Currently supports JSON, should probably
have a binary format as well at some point.
-ensure a set of shaders are linkable using the GLSLCrossDependencyData
struct.
Fix a printf in offline compiler.
Added a pixel shader which uses unordered access resources.
Started work on unordered access resources.
Line ending changes
Merge master into ComputeShader.
Added a compute shader which uses groupshared.
Started work on groupshared support.