fix(combat): reset attack command if new target is different
fix(combat): make skill cancellation tokens actions async
feat(combat): use attack command in combat manager
feat(combat): add combat manager