Creating README.md and license files.
Moving Subsystem into the testudo namespace instead of the global namespace.
Removing unused add_poll_socket function.
zmq context per process and signal handling.

The zmq context is now global to the process and initialized at the
beginning of the program instead of a separate zmq context being owned
per subsystem. Practically, most processes are going to consist of one
subsystem anyway, so this doesn't matter.

Signal handling is implemented by passing signals through an inproc socket
through zmq. This is because zmq has no equivalent of ppoll and we can't
remove the possibility of race conditions by relying solely on EINTR within
zmq_poll.