This method instantiates an AttackCommand using a string of user input.
commandStr - the command that the user typed in. It should follow one of two formats.
a. "attack area [AreaWeapon name]"
b. "attack [primary|secondary] [enemy name]"
This method executes an attack command after it's been issued, and returns a string indicating how the attack went.
If the format of the attack command is incorrect it returns a string indicating an improper format and asks for new input.
A string indicating how the round of combat went for the player. This should include their weapon's attack message, how much damage they dealt, an indicator of how much damage they took (without concrete numbers) and a message for when an enemy dies.