Fix silent bug in DOWN action
Add header guards to Action
Move repeat logic to Action and add assertions