extract the interpreter wrapper
remove extraneous qualifications

If there is no ambiguity, why bother? I keep typing stuff from Prelude
and System.IO and being annoyed that it doesn't compile because I'm
missing a qualifier.
remove unused imports
fix tests, an import was missing

Since doctests are hidden in comments, ghc reports some imports as
unused if they are only used in tests. The solution is to import those
modules in the $setup section of the doctests.
hide Lock and wrapErrors logic in Interpreter
Merge branch 'issue-94' into develop, closes #94