Nested scope

Fix #81 for real this time, Closes #261.

Includes:
  * New tree-based state in Convey execution, using jtolds/gls for goroutine-local storage
  * New (optional) explicit context passing when you need to bridge a goroutine invocation
  * Minimal fixes for the reporting package to ensure they work with the tree-based state