Issue #86: Introducing Layout module, providing multiple site-wide layouts, contexts, and individual block settings.

Fixes https://github.com/backdrop/backdrop-issues/issues/86.

This PR is the combined commits of 6 the Layout branch at https://github.com/quicksketch/backdrop/compare/86/layout_module?expand=1.
This is probably where we need an array sort function as the block list seems random.