run hooks through template allowing for dynamic contexting in pre/post hooks

You can now run the pre/post hooks through jinja allowing for context variables to be accessed
Mutable types as default args are a [Python gotcha](http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html#default-parameter-values)!