Added interfaces
Added the abstract factories, added the animals.  Allowed dynamic
evaluation
Added runFoodChain logic.  Herbrivores evade and Predators hunt
Generalized the initialization procedure for animals in the form of a
mixin
Fixed issue with the animal not being able to be initialized due to the
constructor
Implemented base level methods.  Changed the initialization of animal to
take the name of the animal