pass -noreset to Xvfb

This option tells Xvfb not to "reset" itself after the last client
disconnects (which happens every time Firefox is killed, since it is the
only client).

While Xvfb is resetting there is apparently a window during which it is
not accepting connections. This is the cause of intermittent "cannot
open display" errors from Firefox, if it starts up while Xvfb is in the
middle of a reset.

Many thanks to Peter Hutterer for pointing this out!

Change-Id: I6ea1e8a82f90130a2414e17679201422f7b29aee
fix timing issues with logout/login

Newer Firefox+Selenium revealed a timing issue with the logout()
function. It does not wait for the page load to finish after logging
out, so a test may send another request straight away which could be
processed before the logout was actually handled.

The particular case I saw this was with logout() immediately followed by
login(). Since login() re-loads / it may see a page that is still logged
in from before.

I also removed the extra step of loading / at the start of login(), to
avoid some unnecessary roundtrips, although in some cases we still need
to do it because the test is calling login() before it loads any page at
all.

Change-Id: Ib730387662493eaf0aea22ffe371f083a5b81000
avoid hardcoded /tmp paths in unit tests

The hardcoded paths are causing concurrent Jenkins builds to interfere
with each other.

Change-Id: Ic8e87207f967bf06f10b1769bb71b4f5501fb020