Socket Abstractions and View Testing

Abstracted sockets into the SocketIOPair class, which extends the new
IOPair interface.  This will let me pretend to use sockets when I'm
testing the views, but really just use the MockIOPair to send the
correct strings to the client.  I've used this start covering the
PlayerSelectView, but I still need to test the action listeners.  This
should let me cover pretty much everything that has been written so far,
which will make it way easier to ensure that everything works once I
start updating the GUI for it's current size.

Final note: My IP address seems to be fluctuating more than in
Worcester, so I may need to make a nice welcome screen that lets you put
the IP address in, or I can have people keep using the command line.