Modularized the Project

Will only merge when approved by Vilim, it's not quite ready yet though.