Introduces a special server mode for when the build fails.

Instead of just exiting on a failed load this code puts the server in a wait mode. The only way to get out of this mode is to either exit or send a ``reboot`` command. For all other commands the server will just continue in the wait mode.
Comments are welcome as there might be something I have missed in terms of error handling etc.
We could probably be more helpful here - "The project build didn't load; fix any errors in your .sbt or other build files." Or actually it might be better to warn up above where we know what command they tried to do, so "Cannot execute `$command` because the project build failed to load; fix any errors in your .sbt or other build files."