Commiting before huge change to turn script into giant class
Changed to class implementation
Finished large updated