Support changing views and layout inside the module.

Chaning the values of 'views' and 'layout' inside the module (or the
route) needs to modify the value of the template engine.

By adding a trigger to the 'views' and 'layout' keys in the config, we
can alter the existing template.

Closes #251.