Rework subresource mounting

- Add a separate SubResourceMounter context manager class to return
  from Application.mount_resource(). It's passed the app and the parent
  resource.
- Load factories from strings (i.e., using load_object()) in
  Application.mount_resource() instead of in MountedResource.__init__().
- Don't pass `app` or `_level` args to MountedResource; no longer
  necessary. In the case of app, I don't think the MountedResource
  should direct access anyway.