Currently, if a module's activator's started() method throws an exception, that just goes to the log, while the module ends up being started.
This is wrong. If a module's activator's started() method throws an exception, this failure should be loud. It's certainly meaningful, and modules shouldn't be running if they were unable to complete their started() method, as this is really an illegal state.
TODO: the module framework should catch activator.started() exceptions, and if one occurs it should stop the module.