Removed server-side date and time formatting, moved TimeSheet to UTC DateTimes, added DateTimeCodec

Server-side date formatting is a bad idea - to support client's
timezone, we need to send dates to client as UTC, then allow something
like Angular to format as local timezone/format.
Use DateTimeCodec format in AjaxDataLinkView - this is now set to the
most "common" full ISO format, e.g. 2014-02-13T00:06:00.000Z.
Refactored Timesheet stuff to use all DateTimes internally, rather than
millis:Long. Also added index to each TimeEntry. Old functionality
preserved.
Stripped all date/time formatting from TimesheetView, we need to get
Angular to do it with local time. This should be fairly easy except for
the last-5-days progress bar view, which will need to be calculated on
client to respect actual day start/end, which may not be midnight
UTC... Should be a nice test of a mixed boxes/angular approach, to send
e.g. processed entries for last 7 UTC days and convert to progress bar
display for last 5 local time days, might even have a look at SVG
instead of progress bars.
Codec - added DateCodec, we can also use DateCodec.formatter as our
standard date time string print format (fine to parse with new
DateTime(), which tolerates any ISO8601 format).