This moves us to the much more pleasant position of having one main driver
(in Dyna.Main.Driver) which runs the (common) analysis workers and then
hands off to a user-specified backend (though the interface of
Dyna.Main.BackendDefn). Along the way, we can dump (to stderr or to files)
things we might care about.
Move the python interpreter and debugging tool over to the new pipeline
driver. While doing that, add a "ghcbuild" target to the Makefile that may
behave better than the cabal-istic build mechanism for older GHCs than the
one on my machine.
Add a Python backend selftest module which compares us against "golden"
files in examples/expected/; they are named ".py.out" on the chance that we
get similar golden files for other backends eventually. Wire this in to the
main test harness on the "simple" and "papa2" examples.
While here, move the test harness out of Dyna.Test to Dyna.Main.TestsDriver,
update the README, and move it to Markdown.