refactor, new test suite WIP