PlayerResources.Refresh now caches storage item counts + capacities before triggering the refresh event. Refreshes twice a second. Changed UI stuff to use this new event and the cached values. Spend/afford calcs still use real-time values so you can't quickly spend more than you have etc.