Feature/first unit tests

Here's the beginning of adding unit tests. There is still a good bit of work to do to improve coverage (currently 33.6% coverage by line).

Also, this PR depends on #2.
It just wasn't working yet - threw an NPE. I should have probably just left this test out of the PR altogether.