Refactor tests, add defense

- move combat tests to test_combat.py