Document.js : serialization, Json conversions, and test cases

Added to Document.js:

toJson(), toJsonWithMetaData(), fromJsonWithMetaData()
serializeForSorter() (mongo does some stuff that this isn't doing. Need to understand that)
deserializeForSorter() (mongo does some stuff that this isn't doing. Need to understand that)
memUsageForSorter() (unimplemented. Throws error)
getOwned()

Added a module for unit tests targeting Document.

I mentioned in the stand-up this morning that I think many of the features (new and previously existing in 2.4.0) of mongo's Document don't have a place in mungedb-aggregate since we simply use objects instead of a Document construct. However, I wasn't too sure about the following:

(1) the C++ macros for DOC and DOC_ARRAY
(2) MutableDocument/MutableValue

If anyone thinks those should be implemented, let me know.