Factor out generic fcns and parts of init

The default start() and stop() functions are in DynamicsEngine.
Initialization of the storage object is in DynamicsEngine.__init__. All of
this should make it easier to subclass DynamicsEngine: the dev needs to know
their own engine tool, but doesn't need to worry about our internals.