make `HasProxy` a public type so that `MockVirtualRenderer` can extend it

this is necessary so that we can inject it into the `new
Editor(VirtualRenderer, Session)` constructor.  The `EditorProxy` needs
to be able to extract the `jsProxy` from the renderer / session
instances.