Start working on building mocks for interfaces

We want to build a mock for interfaces that we see.  This is the first
step towards that, but there is still plenty more to do.  In
particular we don't handle embedded interfaces (not even of types in
the same package).
Make interface test scenario more complicated

We want to be able to embed both other interfaces from the same
package, and interfaces from other packages.
More work on mocking interfaces

We can now handle embedding interfaces from the same package.
Handling interfaces from external packages is harder, but hopefully
not impossible.
Refactor interface mocking

We need some extra information in order to deal with external embedded
interfaces.  So refactor the interface mock generation so that we do
more information lookup earlier when we still have the context we
need.
More work on external embedded interfaces

Still doesn't actually work, but hopefully getting closer.
Implement loadInterfaceInfo

This is the last part of getting the interface mock generation
framework going.  We now have suport for embedded external interfaces.

We still need support for generating a package with mocks for
interfaces defined in the code under test.  However, that means
scoping types that are used, which we currently can't do.
Remove a load of debug output