v1/v2 oop

How about tests for the `attack()`?