refactored Effect to use an ID field as key, instead of arbitrary integer. Implemented stacking effects, and wrote removeExpired Mods