Refactors StringUtilities

* Moves StringUtilites down to org.teiid.core.designer to allow more
  plugins to use it

* Converts StringConstants into an interface with StringUtilities
  implementing it and moving it string constants appropriately. This
  simplifies the need to those string constants throughout codebase
Splits salesforce plugin into main and lib

* Salesforce plugins requires at least 5 plugins to be installed in mvn
  repo for it to successfully download its external library. This is slow
  and painful.

* Lib plugin just downloads the external library and exports it ensuring
  little else is required.
Reduces complexity and needless duplication

* There exists 2 ModelType classes, which both have identical values and
  literals. Reduce these down to a single class with the static constants
  refactored into a single enum

* **.util.ModelType
 * Adds enum Type which provides single point of information for all
   model types. All existing constants in rest of class defer to this enum
 * Existing constants remain to avoid too many code changes

* **.core.ModelType
 * Defers to the enum in the 'other' ModelType class Type enum.
 * Preserves all constants to avoid too many code changes
 * Discard unused isShredable function
 * Avoids adding a Type field to ModelType since this will not have been
   serialized in existing models

* StringUtilities
 * Provides CamelCase function

* IntermediateFormat
 * Removes another ModelType class and uses Type enum getCamelCaseName
   method instead
TEIDDES-2094: Adds function for converting annotated translator classes into mxd files

* Takes a teiid annotated translator source file, reads the annotations
  and outputs an mxd xml file ready to be plugged into designer.
Log the exception occurred when trying to display teiid connections

* Teiid error nodes only display generic message rather than actual
  exception that occurred
TEIIDDES-2094: Adds a listener for analysing the teiid transforms

* TeiidInstanceMedListener
 * Listener that responds to teiid connections events and converts the
   transformer extension properties into med files
 * Moves the transformer analysis logic into extension.ui plugin to take
   advantage of the existing functionality.

* MxdConstants
 * Generic interface for mxd conversions

* MxdConvertor
 * Adds conversion from translator extension properties to med xml file

* TeiidPropertyDefinition
 * Adds owner property that represents the target object class, ie. Table,
   Procedure, Column

* Rework and extend tests for cover conversion of translator properties
TEIIDDES-2145 Edit Translator Override Properties Dialog - limits properties table height
Merge pull request #334 from mdrillin/TEIIDDES-2145

TEIIDDES-2145 Edit Translator Override Properties Dialog - limit properties table height
TEIIDDES-2143 - added confirmation dialog to translator override deletion
Merge pull request #335 from mdrillin/TEIIDDES-2143

TEIIDDES-2143 - added confirmation dialog to translator override deletion
TEIIDDES-2144 Problems with Allowed Languages section of VDB Editor
Merge pull request #336 from mdrillin/TEIIDDES-2144

TEIIDDES-2144 Problems with Allowed Languages section of VDB Editor
TEIIDDES-2115 now checking for translator == LOOPBACK to prevent trying to create DS
TEIIDDES-2141 removed connection check for updateState() and replaced with simple URL validation
TEIIDDES-2140 resolve issue with no translators shown in teiid 8.6 instance
Merge pull request #337 from mdrillin/TEIIDDES-2140

TEIIDDES-2140 resolve issue with no translators shown in teiid 8.6 instance
TEIIDDES-2146 Added check for available connected server
* enter name in text field if no server
* Select from available translator types if server available
TEIIDDES-2146 added getTranslators() convenience method.
TEIIDDES-2142 moved various panels to 4 tabbed panels
* Permissions, Mapped Role Names, Options and Description
TEIIDDES-2112 Tweaked MYSQL XSLT to check for PK's named "PRIMARY" and use different alter statement