add test framework and tests
extract preset into its own class