Add type check for string on $date

[As per the docs](http://docs.mongodb.org/manual/reference/mongodb-extended-json/) "In Strict mode, <date> is an ISO-8601 date format with a mandatory time zone field following the template YYYY-MM-DDTHH:mm:ss.mmm<+/-Offset>."

This is actually on partial support as "The MongoDB JSON parser currently does not support loading ISO-8601 strings representing dates prior to the Unix epoch."