added cmake files, implemented several classes to structure the application and to tidy up the main.cpp like window, camera, light, model and shader manager class