Default data

Hey @cmather - this solves the basic "what should the default data for a yield region (or layout template) be" problem. It defaults to whatever the data context of `{{#Layout` was, unless you call `layout.setData()`.

I think this is natural and what users would expect.

There's a secondary issue (encapsulated in the commented out test) where the yields don't get the data context you might expect. I don't actually use this and I'm not 100% sure what is the correct behaviour so I propose we leave as is for now. But I think I could change it easily enough if you feel strongly about it.

PS. If you turn on logging I see `getData()` logged a lot. I'm not sure if this is normal or some weird side effect of this change?

Fixes #1