Combat refactored, socket version update

Redundant bits of combat.js were reduced and will be refactored out.
Tested on latest node release.