Implement an initial client and move the GUI code into a separate submodule.
Update the console entry points to use the new client classes.