Implemented Stat<T> and added UpgradeEvent