Add and utilize an implementation of the Tester class

This class is used to compare outputs.  The current implementation allows
the setting of the two files to compare, and to run one of two comparison
functions: one simply returns true or false, while the other returns a string
which may be
- empty, indicating a successful match
- a success message, if the client has called print_on_success()
- a message explaining what was different between the files.
There are also features in place for ignoring specific characters, including
whitespace, though note that these are currently untested.