Fixes #135
Fixes #117
Fixes #122
Merge branch 'graphics/refactoring' into develop