added id property to models

in earlier versions, _id value would be displayed as the id property of
the model. However, this method does not seem to be platform independent
as MongoDB has its own special way of calculating ObjectId. In addition,
MongoDB would throw CastError for _id values not compatible with the
format.
So all references to _id is replaced with its id counterpart. test cases
are updated, and incompatible id value test are removed.