layout: add engine class
layout: add horizontal layout strategy and tests
engine: finish off strat selection
layout: add vertical strategy
tests: refactor so that tests file loads engines
tests: expand to cover vertical engine too
layoutEngine: syntax error
run: expose layout engine
layoutTests: improve assertion coverage
toc: include vertical layout stategy
engine: rename parameter
engine: add :debug() to display data about strategies
engine: only perform layout when told to
tests: fix values for yoffset in horizontal mode
tests: fix vertical direction tests
layout.vertical: fix x direction being inverted
engine: ensure strategy names are all lowercase
engine: move strategy decision to ctor