We should create mocks for interfaces

When we see an interface we should create a type that implements that
interface that can be used for testing - after all the package we are
mocking may not actually provide a concrete type itself.

This is just a test to show the lack of functionality.
Fix redirection in test script
Add missing mock creation in new_methods scenario
More test enhancements

We now check that the example works with both withmock and mocktest.
Installing the tools is the first test

Before we check that they work, do they even compile?
Start trying to generate NewXXX methods

For all the types that we are generating mock recorders for we also
want to generate NewXXX methods on the meta type (i.e.
MOCK().NewXXX()).

This isn't complete, as literal() does not yet work for all types.
More work on NewXXX methods

For some type we just give in an basically write a casting function.
For exported types we just don't bother at all since values can be
created directly.