Added 'calendar' format and handling for deferred formats

Deferred formats (such as 'calendar') are formats that themselves handle
the querying, presumably through Ajax, instead of just handling the
query results.

'calendar' uses the FullCalendar JS library, which in turn uses the
Moment JS library.