reorganizations and cleanups to the lib code and test suite

This is a cleanup pass mainly to get the tests up to our modern
conventions.  This involves the following:

* no longer use `BaseTests`
* standard test file requires convention
* try to organize the lib and test code to where there is a unit
  test file for each lib file

Some other random changes include breaking out the manager logic
into its own file, breaking out the test helpers into their own file,
adding a `test_handler` test helper.

This is all prep for new features and changes.  I want the tests
and code to be in the best state possible before I go making
changes.
Merge pull request #86 from redding/kr-cleanups

reorganizations and cleanups to the lib code and test suite
test runner raises custom exception if given an invalid handler class

This updates the test runner to validate its given handler class
includes `Sanford::ServiceHandler`.  This main reason for this is
that if you forget to include, the default error is some cryptic
argument error.  This makes it so that instead of a cryptic error,
you get a very specific error that tells you what the problem is.

I've only added this logic to the test runner to not add the overhead
of this check to every live request.
Merge pull request #87 from redding/kr-test-runner

test runner raises custom exception if given an invalid handler class