Converting the databus to a feature to try out the new feature api

Including the startup support. @johnsimons what do you think?

I think we should change the feature activator to execute each startup task on a diff thread just like we do with all the other "I want to run when the bus starts"

cc @SimonCropp