Add Playable Client and GUI Launcher

Launcher allows launching of Server, Clients, and spectators.

Server is launched with a GUI and includes dialogs for loading/generating grids.
Client is now playable.  Listens for KeyEvents and can be used to play the game. #69 and #10
If a Grid can not be loaded properly, fail gracefully. #83

Launcher is not too robust yet, but I will improve on this later.  It is absolutely usable and the recommended way of running the game.

I don't like how I have so many subclasses of JFrameTextView, but I don't know how else to do it.