fetchCalendar ajax calls are now aborted when a new one is started. This prevents wasted bandwidth and makes navigating much smoother
gave photos a loading animation rather than just having a 1x1px black dot sitting on your screen while waiting for them to show up
fixed bug causing datastore to be broken when output is off