added notification to SystemStateParam and SystemStateObjParam, it should reduce the need to explicitly handle the getters, setters, locking, and notifications by wrapping them all in to one.
added the mainloop load to the system state, MainApp where it will be reported from, and RateLimiter which will record it