Cache fetching of the User Object.

Every transaction requires the User object, which never changes once
the terms of service are accepted. So we cache it iff terms of service
are accepted. We hold it in memcache for 60 seconds. This removes one
datastore “get” operation per transaction.

More to come...

Change-Id: Ifd11ad6af9cef5f2e67949c0b5aa66e62e6579e4
Change Blocks Editor Autosave Interval to 5 seconds.

The previous value of 500ms was way over aggressive resulting in a lot
of network/datastore traffic. Note: If a user closes their browser
while unsaved changes are pending, the WindowClosing handler in
Ode.java will save the changes. I have verified that this mechanism
does in fact work.

Change-Id: Ib693fc1c5bc3ac4dd0b2ab9b323dba09bd962539