refactor tests to separate files

handles #60