New Shadow Code

Seperated into functions for rendering to FrameBuffer and rendering to
Screen