Support date partitioning with JSON data.

Commit message says it all.

I also updated the Thrift code to support fields other than `timestamp`.

CC @pgarbacki @andykram
I would just let this exception escalate to stay consistent with the thrift message parser. In the future, we may want to decide if we want to mask parsing errors.