Major performance adjustment

Removing this initialization code from the default constructor has an
enormous impact on performance.
Add compiler flags for rvalue reference support
Performance improvements

changed function parameters to use pointers for template discriminators
rather than references. Now entire temporaries that are not used do not
have to be created.
Initial addition of move constructors
Merge branch 'master' of https://github.com/PaulMWatt/Alchemy into C++11-Features
Converted References to Pointers for Efficiency

These fields are only used to help with tag dispatching. Creating values
to use as references that will not be used is expensive, especially when
structures and nested messages get involved.

This change increased performance enormously on the benchmarks.
Fixed an issue with serialization dynamic offsets

Fields located after a dynamically sized field were not previously
serialized to the proper location.  This applies to messages with
vectors.
Fixed Packed_bit type

- A few serialization tests still fail.
- I'm looking into it.

On the benchmarks the packed-bit type is 9% faster than the raw type.
Fixed issue reading in serialized nested data

This is similar to a problem that I previously fixed for serialization
in the output direction.
Optimization

Removing these initializations slightly improves performance. The
initialization is redundant, and it is even more expensive for vectors
and nested types.
Corrected test data for new tests

A more comprehensive test format has been created.
It is a bit pathological to really put the generic template processing
through the ringer.
The test format is a hypothetical structure for describing a 3d geometry
scene. A small collection of triangles, vertices, colors, objects,
instances, transformations and other structures are combined into a
world object.
The world object is what is tested as the data is manipulated.
Merge branch 'master' of https://github.com/PaulMWatt/Alchemy