Change BufferedLayer
Add ShadowLayer (an abstraction of light/shadow map drawing)