NEW: Added constructor for state to copy another state, removed redundancies in ImageDataObject management in the model, modified Mode hierarchy, fixed AttackObject constructor to properly deep copy given AttackObject
Merged with branch, fixed AttackObject discrepancies