Big commit:

* Organised everything in seperate classes
* Removed variable passing via Main class
* protected methods are now public
* Made seperated classes for seperate methods. (Methods class is a lot
smaller now)