adds more tests and implements a deep clone method for monster