add version in package.js
fix layout rendering bug with issue #724

There were two bugs which were fixed primarily by using the updated
iron-layout and iron-dynamic-template packages. I backported the
packaging release work and will do new releases of these packages.

There were actually two bugs:

1) template setter in iron-dynamic-template could create a dependency if
the parameter was undefined and the last value was also undefined. this
was fixed in the packaging branch but not backported.

2) the second bug could be reproduced by doing the following in your
action function:

this.layout(undefined);
this.layout('MyLayout');
this.render('sometemplate', {to: 'someregion'});

The rendering would happen on the wrong layout region. This has been
fixed in the newer iron-layout.
Merge branch 'bug/layout-rendering' into devel
add specific iron-layout version dependency in smart.json
Added new hooks `onEachRun` and `onBeforeSwitch`.  Modified `waitOn` to inherit from the hierarchy of RouteControllers.

`onEachRun` - Works similar to `onRun` in that it is called before `waitOn` hooks - however it will be run on each new page reload (useful for permission checks)
`onBeforeSwitch` - Works similar to `onBeforeAction` except it it called before the current layout changes / is destroyed. Calling `pause()` in this hook will keep you on the current page.
`waitOn` - now uses the same "hook inheritance" as regular action hooks.

Finally, template data isn't set until `onBeforeAction` is cleared without pausing or stopping.

Hooks are compiled by common function `RouteController#_collectHooks`