unit testing has begun. Hopefully, I'll be able to leverage this to get good test coverage.