Fix battle + code reorganization