re-factor test system

The previous test system was not designed very well.  Each test had its
own copy of the CPU module which was identical to the other tests except
for a few parameters.  And the test output was not very useful.  A diff
of the output compared to a know good output was performed and on
success nothing was displayed.

Improve the test system by creating a generic CPU test bench module
which is compiled using defines to specify the parameters.  And provide
better user feedback by describing the number of tests that were run,
the number the failed, and the number that succeeded.
im: minor documentation cleanup