bug fixed in battle.js, results now return true and false. basic user controller refactoring