Add loading and error messages
Compartmentalise the fetching of talks and use OAuth token.

AJAX calls now ask for JSONP and use the done() and fail()
methods of the jqXHR object. The calls also trigger the status
of the fetch, meaning the user now sees loading and error
messages.

Ideally, each talk should have its own loading and error message.

OAuth token gives us a rate limit of 5000/hr, up from 60/hr for
unauthenticated calls.