Modified the InputComponent API for adding multiple UIValidators.

This breaks the InputComponent API.

It allows multiple validators to be added to an input component,
instead of just one. This allows for easier faceted validation,
via addition of validators based on certain criteria like the
presence of hints for UI widgets etc.
Added pattern based validators to PromptTypes from Forge 1

Only the ClassName and PackageName validators are coupled to
input fields though.
Added Java variable name and Maven dependency Id based input types
Introduced specialized input types for pattern based validators.
Added converters for specialized input types.

Also reverted InputType SPI changes.
Added assertion check for adding a validator to a InputComponent.