More GUI.

It's getting a little messy. Perhaps go MVP/MVC?