Wrap text in editor before the buttons.

* Adds 52 px margin-right
* Fixes #3223
Fix a page cache bug that can lead to lost updates

The problem was in the MuninnPageCache#evictPages method, in that we released
the write lock on the newly evicted page before we attempted to grab the write
lock on the translation table, for removing the evicted page. This left open a
window where another thread can do a look-up in the translation table, observe
the page that we have just evicted, complete a page fault, and then the
eviction thread would get the lock on the translation table and remove the page
that was just faulted in. This is the bug.
Later, another thread would find that the translation table does not have an
entry for the page it wants, so it faults it in. Now we have two cache pages
that are bound to the same file pages. If both are written two, then one will
overwrite the other when they are evicted. This is the symptom we observed in
our tests.
Increase the potential parallelism of page faulting

... by releasing the write lock on the translation table sooner. This way,
other page faults to the same stripe can proceed, while page faults and lookups
for the specific page will wait like they've always done. Except now they're
waiting on the lock on the page itself, instead of waiting on the lock for the
translation table. We ensure this by grabbing the write lock on the page we are
faulting into, before we add it to the translation table and release the lock
on the translation table.
Manage position ourselves in PhysicalLogVersionStoreChannel

since it's expensive enough, especially on Windows, to show up in
profiling.
Changed the test implementation so that all tests use the same impermanent server instance (they don't change server state after all).
Merge pull request #3271 from chrisvest/2.2-pagecache-stress

[2.2] Fix a page cache bug that can lead to lost updates
Made the online backup timeout configurable.

On the backup client side, a use-specified backup timeout could be
passed in when creating a new client instance. The timeout could either
be specified via command line (BackupTool) or Backup API (OnlineBackup).
Merge pull request #3280 from tinwelint/2.2-vlog-manual-position

[2.2] Manage position ourselves in PhysicalLogVersionStoreChannel
Merge pull request #3241 from oskarhane/fix_hidden_editor_text

[2.2] Browser: Wrap text in editor before the buttons.
Merge pull request #3284 from jimwebber/redirect

[2.2] Changed the test implementation
Merge pull request #3257 from S124568/online-backup-timeout

[2.2] Made the online backup timeout configurable
Issue kernel panic in case of failure to apply

just like the commit process does.
Uses update puller thread for catching up with master

before dropping the availability guard. Changes to make this behaviour
happen:
- UpdatePuller listens only to masterIsElected events and pauses
  the thread for every such event
- UpdatePuller does not unpause itself on slaveIsAvailable, because that's
  too late. Instead SwitchToSlave does the unpause after HA
  comminunication has been started and just before dropping the
  availability guard.
- UpdatePuller doesn't check for availability, that's a concern of the
  UpdatePullerClient only.