Broke apart files and cleaned up a bit