Putting together all the GUI work.

See #130