First major commit of server, client, and command-line code. The client is packaged as a gem. The server isn't really packaged much yet.