Fix bug where SIGINT would not exit test.

Now that signals are handled by a self-pipe queue (ef645ca), the changes
made in 7a3c665 (2 layers of SIGINT handling) make less sense. This
commit introduces new SIGINT handling behavior: if a test is running,
the test is exited. Otherwise, the server is exited.

Other changes:

1. Move messages written to/read from queue into constants.

2. Add a "ready" state to indicate whether or not the server is ready
for new tests or commands.

3. Reconnect signal traps to signal "handler" methods.
Merge pull request #1 from paperlesspost/signal-handlers_exit_test_with_sigint

Exit test with SIGINT