Add ES2 shaders to example program
Implement C++ reader for binary data exchange format

This data format is intended to replace MessagePack for our purposes.
MessagePack has proven to be a very good format, but the C++
implementation leaves some things to be desired.

This is a very small library, probably very much slower than the msgpack-c
library. However, it will fit as a piece in the Rosewood puzzle much better
thanks to its few assumptions and easy build process.

Right now, this is only a C++ reader library with unit tests. Write support
and full MessagePack replacement will come later.