Add Datastore

This patch adds the Datastore class and provides methods to retrieve
a key given the path to the key. Per the design document, the
datastore has the responsibility of managing the disk storage as it
relates to the records.
Merge pull request #32 from vmrob/datastore

Add Datastore