factored tests and exercises into separate files.