More user/weapon refactoring