2D Model Refactoring Stage 2

Improvements for 2D view code:
+ scene-specific code moved to scene itself;
+ some optimizations for scene redrawing and walls cache;
+ many useful bugfixes.