make IErlangEngine generic
add javax.inject library
make ExecutableExtensionsFactory use ErlangEngine to inject services
make XrefService injectable and let ErlangEditor to get it from there