Added documentation for versioning and explicitly declared public where
needed in EMongoDocument