Refactor Rename

The RenamePage support currently just renames the page itself, it doesn't update links to the page.

I'm so used to 'Refactor... Rename' in Eclipse to change the name of a Java class and update all references that this is very frustrating.

There are two bits of missing functionality needed to implement this:

  1. Need to be able to re-write the page AST. A trivial search and replace would get it wrong sometimes.
  2. Need to be able to make multiple edits in one commit (and check RecentChanges and PageHistory cope).