Allow background colour in benchmark to be set in the URL

Having different coloured results makes it easier to distinguish between
active instances of a benchmark (e.g., master + branch).
Activate the undo manager in the performance benchmark
Merge pull request #325 from peitschie/benchmark-tweaks

Benchmark improvements
Control of canvas focus is no longer CaretManager's responsibility

This now logic now lies in the InputMethodEditor class.
Limit caret redraws to a maximum of once per cycle

Any operation or group of operations that affected multiple
paragraphs would cause the caret to re-render multiple times.

Now, updates are stored, and the final caret state is redrawn
only once on the next cycle.