Added Date object support

It checks if Date is valid Date and if so the resulting object will be a Date object.

I suppose if user set some field as **Date**, she expects to have Date object on the output, otherwise she could use **String** type. I think It could be helpful to avoid additional checks and transforms before saving object to MongoDB or something.

Tests provided.