Bugfix in E2E test: intermittent failure

The project settings page E2E test has an intermittent failure where
after calling browser.navigate.back(), sometimes the next line of the
test would be run "too soon", before the back() has actually completed.
Use browser.driver.wait() to fix that.
Fix truly obscure bug in E2E test on Linux hosts

The E2E test of the project settings page had another, truly obscure,
bug, which only manifested when run in a VM on a Linux host. The project
settings page E2E test tests new user creation, which (among other
things) sends a signup email. The signup email is generated and sent
using (among other things) the PHP Twig templating library, which uses a
cache directory to store its templates so it won't have to create them a
second time. The cache directory, by default, is in src/cache, and Twig
creates doubly-nested directories inside it for its cache (i.e., it
tries to create filenames like src/cache/11/22/33445566.cache). This
works fine on the production server, since the cache directory in
production can have the sticky bit set. It also works fine on Windows
development machines, where the backing filesystem for the vboxsf shared
folders doesn't understand Unix permissions and so all permissions are
set to rwxrwxrwx inside the shared folder. But on a Linux develpment
machine, the shared folder inherits the permissions of the "real" folder
on the host, but *strips the sticky bit*. So when Twig tries to create
its nested cache folders, they end up owned not by www-data, but by the
developer's user account on the host machine ("rmunn" in my case), with
the host machine's umask of 0022 applying. Thus, even if the cache
directory has the sticky bit set, Twig will be unable to create folders
inside the cache directory, and it will fail with an error about
"mkdir(): Permission denied". This in turn causes the user-creation test
to fail, along with any subsequent tests that relied on that user
existing.

Fortunately, we already have a fix: the user-creation code is configured
to check if we're in "Test Mode" and if so, tell Twig not to cache
anything. This is used in the PHP unit tests, but until now we had not
set the "Test Mode" flag (a global PHP define(), actually) in our E2E
testing. However, when testing on Linux development hosts, we need it;
so this commit sets "Test Mode" in the PHP config for E2E testing, put
into place by setupTestEnvironment.php.
Allow user to edit text USX in text settings

This commit also includes an E2E test for this feature.