separate memcache and nbconvert thread pools
add instrumentation log statements for async operations
add some timings for async operations
compress in memcache

and limit memcache entries to 16 MB (zipped)
bound memcache expiry

- min 10m, max 2h, based on request time
- always use max cache expiry for links from the front page
distinguish form posts from front page links

with `?create=1`
heroku threads up to 11
use 'slow page' template when notebooks are slow

original request will finish, it will just never write to the client,
only the cache.

should avoid heroku timeout errors
short circuit redirect in finish_early
support curl in AsyncHTTPClient

and ensure user-agent is set
catch client error on blob
add pycurl to requirements
fix requirement and bootstrap