add extension point for terminology generators

generators can be added via extension point and configured via the
compiler preference page