Add GUI

I started this before I knew that someone else was working on a GUI, but my version looks better (IMO) so it's up to you to decide which one is merged.