added moment.js and actually calculate & store durations.
updated to use guids rather than incrementing ids to make future syncing functionality simpler