Simplify directory structure and class names.
Improve code appearance, small tweaks.
Merge branch 'master' into simplifications