I refactored the attribute classes. I added an initialize method to the IAttribute interace and eliminated the unused constructors from the different attribute classes. I also cleaned up the PlayerAttributes class by calling each attributes initialize method from within the PlayerAttribute class rather than calling the setValue and setLimit methods individually.

 also eliminted the AttributeBase class since it was not being used. I originally created this abstract class that implemented the IAttribute interface (as abstract methods) and let the specific player attributes (e.g., AttributeHealth) extend this base class. However, since there was no common logic in the AttributeBase class that was common to all attributes, I decided that this base class was no longer needed.