Added QWORD type
Exceptional exceptions
Abstract out handle creation and added value caching

Registry class now manages connections to a registry and supports
connecting to the registry on remote computers.

Value data and type for a key are now cached in a ValueCache for quicker
reads and data type detection. One iteration over values will cache
everything.
Updated code sample