work on test suite, pushing coverage to 95%