Introduce LayoutBlockAndContextProviderInterface and add build() to gene...

...ral layout and layout region interfaces.

First version, most certainly not ready for a merge ;)