seperated different levels of functions into there own files/classes
forgot GMSCoreInterface.class.php to add to commit