Fix template method to check arg length to determine getter/setter.

If you call myLayout.template(undefined) it should treat this as an assignment,
not a get.

cc https://github.com/EventedMind/iron-router/pull/607.
Add test for setting undefined layout.
Use deps-ext Deps.cache instead of UI.emboxValue.
Remove console.log.
Bump version to 0.2.6.
Basic interface working as in Verso.

For #11
Embox.
Data can be null
Don't set `this.data`, rather use `UI.with`.

This means that the component, or specifically `getRegion()` will receive updates to data reactively (for instance if you do `{{#Layout template='layoutWithFooter' footer=someHelperThatReturnsATemplateName}}`).

So we can use `data()` as a secondary source of region names reliably, and all is roses :)