Made lots of GUI improvements and tweaked code to be more flexible.