Use Timestamp instead of DateTime to handle millisecond collisions

Concourse uses microsecond precision internally, but the API accepts
and returns DateTime objects. Since DateTime's only use millisecond
precision, it appeared as if data was dropped to client if it occured
within the same millisecond as other another operation.

This commit adds a Timestamp wrapper around Joda DateTime to handle
microsecond precision.