check that a java type is an ExtensionPoint
make PluginException visible from outside (public)
adopt semantic versioning