create abstract battle entities
add basic battle logic
add abstract action class
add EntityType
add abstract action class