Swapping out notifications for hardware events vs using the delegate to allow for multiple listeners and less tightly coupled controllers