Allow helpers to work inside `{{#Layout`s.

Ugggh. That was not an easy monkey patch.
 
@cmather - I don't know if we should ship this but it appears to work the way I wanted. It's much easier to just patch Meteor and change ui/base.js:findComponentWithHelper directly.

In any case, you'll see that both helpers are now working as they should. 

The basic change to blaze is that you can define `__passthrough` on a component which means it both acts as a helper host (in that it provides helpers) and not as one (in that it can be passed-through for look up).

Apart from philosophical objections, the one thing that concerns me is that helpers defined on the layout template will work within the yielded block. This will be surprising to users, but I can't see a way around it without doing something crazy like setting the `.parent` on the `yield` component to the outer template.

P.S. potentially this could mean you could get rid of your other hack (for `yield` and `layout` and instead set `__helperHost` and `__passthrough` on the `Layout` component itself).