Converting to use an event driven system as opposed to passing delegates. Updating interfaces with events and with more properties.