Clean up and updating of server tests, and remove fix deprecated
method of starting the server programmatically.
Re-refactor server runnering machinery so it's easier to consume
from third-party code (i.e. the front-end tests).
Make server runner a singleton, and make a few other tweaks