Added GUI and made changes under the hood

Added some of the the GUI components for the main visualization. Still
need to finish them though. Also made changes to the CourseBuilder and
the course classes to make the program more extensible