refactored
adds test files