Refactored code into a method based solution rather than one big function
Breaking stuff out even further
Close to getting shadows working
Refactored code and added logic for reflections and shadows. Coming out wonky though
Got  shadows and reflections roughly working