Implemented shadows

TODO: Still need to fix the screen bug (rendering the same scene multiple times)