Switch to the event state instead of module.run; use onchanges

Since we're dep'ing Helium we should use the shiny new things!