[issue1021] Add asynchronous page update capability

Branches off of #1352. By new issue id, addresses #1336.
In general, I'm very happy with this functionality. One thing I'm concerned about is if people manage to confuse themselves by having two different tabs open, with different state.

One thing we could do to ameliorate that is what (iirc) MediaWiki used to do, which was that when the page presents you the form, it adds a hidden field storing the last modification time. If, when you submit the form, the last modification time != the current last modification time in the backend, it refuses to save, and says, "Hey, go fix up any merge conflicts, and try again."

Then to improve usability, MediaWiki started doing a 3-way merge... and things got complicated, so if we don't want to go that route, it's understandable.