Cleaned up the PluginAccessor code.
Fixed bugs in the VirtualProxyPlugin.equals() and
VirtualProxyPlugin.instanceOf() methods.
Made VirtualProxyPlugin.getUnderlyingPlugin() private as use of it was
insidious, and have instead added a Plugin.getPluginClass() method that
can safely be used wherever a Plugin instance is available.
Got rid of getUnderlyingPlugin() completely, as we can just use the
plugin member variable instead.