Major update - switched layout to tabs

Completely changed many parts of the program to go along with changing
to using tabs. Layouts for the tabs in the GUI are temporary, they are
directly copied from the old layout.