Rename .h files to .hpp for consistency
Rename id_type to DocumentId
Rename trid_type to TransactionId
Let Engine allocate document ids

Let Engine allocate document ids from storage drivers
when insert mutations are added to transactions.
This way transactions always insert documents with
consistent document ids, even if they are replayed from log.

Related to issues #4 and #6