Store timestamp with timezone, and also store time offsets, when parsing events store this extra information.

Note: storing a timestamp with a timezone is just an input nicety - it will not store the timezone/offset that you store with the timestamp. See: http://stackoverflow.com/questions/22795251/why-do-postgres-timezones-change-around-1967-68
Set default on dates property - using now() in defaultValue sets the default time to when the migration was read, not a "dynamic now".
Add event changes rest call
Add timezone offset setter script
normalise the times returned so they are independent of timezone
return timezone offsets
Don't set the typeid on the params object if it hasn't changed, otherwise it registers as a change.
use datetime picker instead of date picker
Add history tab
Times are now all presented to users in the local time, but processed in UTC.

This accepts time from the server in UTC, with an additional offset. All diffs are done based on UTC.

The other additional issue this deals with is the browser's local timezoneOffset in the date object. This is handled on parsing the date and then on sending it to the server again.

Note: this probably breaks saving dates - this will be handled in a latter commit.
add missing template.
Don't send empty participant arrays
Show all recent event changes in its own table.

Note: This will need to be enhanced when other changes get recorded.
clean up after tests a bit better
use history renderer to show the history view
always refresh the location on a save complete
Event editing fails if the event is being edited or has been edited
make jshint pass
Make the github strategy return extra info so we can get the user's name
remove console.logs