Selective isolation

Actually it's more complicated than that. In all cases I could see, ```on_route()``` calls ```self.start()``` for transactional requests. The trouble with overriding that is the decorator won't have been processed.

There don't appear to be any side-effects at all for calling ```start()``` multiple times.