Implemented Marshaler interface on ObjectId

By implementing the Marshaler interface (one function MarshalJSON), 
you no longer have to worry about converting the objectId to a string before calling json.Marshal

http://golang.org/pkg/encoding/json/#Marshaler
Added UnmarshalJSON and tests
Typo in test output
Remove trailing spaces in comments using gofmt.