Add test of `raise FooError from BarError`

This is new syntax in python3.  The failure of this test demonstrates that the RAISE_VARARGS is improperly implemented for py3.
Implement raise FooException from BarException, but ...

... break some other tests along the way.
comments
refactor out py3 behavior from py2 method
refactor do_raise slightly
more verbose logging of stack