Support let syntax for locals.

Required a changing of the AssertionContext API, it is now shared with
the Context which has less surprising behaviour (methods defined in a
context are available in the unit of work.)
Add documentation notifier and allow nil names to support it.
Update doc script.
Merge branch 'master' into gh-pages
Updating docs.