Migrated from Boost.Test to the Catch unit-test framework.

This removes Boost as a build dependency, eliminates weird problems
with `make check` on certain platforms, and generally makes life more
pleasant.

See: https://github.com/philsquared/Catch
Ensured that the test suite source files include the <config.h> header.