Changes to spi interfaces in preparation for adding them to runtime plugin

* Removes some seemingly unrequired object interfaces

* Fixes some collection and list generics

* Decorates some with Since and Removed annotations
Adds spi interfaces to AST nodes

* Command, QueryCommand and FromClause classes made abstract

* AlterProcedure, because of its generic class declaration must be
  split into versions and an abstract class used

* Constructor with single int removed from classes since the parser
  is necessary for creating new nodes.

* Currently compile error remains on Function since IFunction
  requires FunctionDescriptor which has not yet been ported

* Visitor refactored to reflect current naming conventions
Refactor package names to reflect where classes originated

* Since maintenance of this plugin will require analysis of changes
  in teiid, it would be beneficial to keep the ported teiid classes
  in the same packages as they are found. This will allow for diff
  apps to more easily compare whole directories of files when
  determining changes
WIP