layouts experiments.
Merge branch 'master' into feature/layouts
Improvements.
Many improvements.
Refactored a lot.
More refactoring.
More refactoring.
More refactoring.
more refactoring.
More refactoring. 256 colour support and more fixes.