Fix #81.

Uses gls instead of file:line association to track test execution.

All tests except for embedded assertion passing. New test for #81
coming up.
Add test for nested iterative convey reports
With optional local context, re-enable skipped test
Clean up unnecessary goto
Remove unecessary Write() method
Clean up debugging prints
Unneeded defer
Clean up failure mode calculation
Clean up visited type (unneeded). Move some functions around
Organization and documentation
More documentation
Fix import ordering
Remove unused ShouldBeTopLevel method
Minimal fixes to reporting for nesting scopes.

Uses a quick hack to correctly obtain a 'unique' ID for scopes
in the flat map used by the JSON and story reports. A correctly
crafted Convey name could collide with a key in the map, but that
is likely to be self-sabotage.

A more elaborate solution would be to have a generic report-gatherer
tree, and then implement the various output reports as walkers over
the tree structure at the end of every story.
Use a map instead of a fixed slice ordering
Remove test from context.
Cover the case of the panic'ing reset.

Also remove comment about LIFO, since the tests already enforce
FIFO ordering of Reset's (e.g. WAI).
Improve the internal panic messages.

Also simplify the rules for Convey-induced panics. They'll always
bubble to the top now instead of sometimes bubbling or sometimes
recovering.
Merge pull request #264 from riannucci/nested_scope

Nested scope. Introduces dependency on github.com/jtolds/gls package. Fixes #81. Fixes #156.