cpp: Add initial C++ implementation

Note: this is not yet complete.  It includes

- `xsd-fu` templates for C++
- C++ implementation in top-level `cpp` directory:
  - `cmake` build infrastructure
  - `xerces` wrappers in `cpp/src/ome/xerces`
  - `ome-xml` static sources in `cpp/src/ome/xml`
  - `bio-formats` static sources in `cpp/ome/bioformats`
  - tests in `cpp/test`

TODO:

- Use gtest for tests
- Complete ome-xml model code; it's mostly complete but missing a few bits
- Complete MetadataStore/Retrieve and related template conversion; needs the model code fully functional first
- Add the basic scifio/bioformats interfaces equivalent to the Java implementation

To test

```
cd cpp
cmake .
make
```

`cmake` will run xsd-fu to generate all sources and set up a Makefile to build.  Note that the sources are not currently portable and need a C++11 compiler; C++98/TR1 fallbacks need implementing.