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

This partially reverts commit 254972975996902ab1d9213e8cbca2d01e62d668.

* Requires the IProcedureContainer and IArray after all

This reverts commit 254972975996902ab1d9213e8cbca2d01e62d668.
Refactor the QueryService and SyntaxFactory

* Classes are not part of the engine but are external services offering up
  the internals of teiid.
Adds Mapping node classes

* Adds in xml mapping node classes, ensures they are backward compatible
  with 7.7 and can be created using the query service
Refactors AST nodes to reflect teiid engine packages

* Moves org.teiid.query.sql.lang.symbol classes to
  org.teiid.query.sql.symbol

* Moves org.teiid.query.sql.lang.proc classes to org.teiid.query.sql.proc

* Adds the boilerplate for Array being generated through both javacc and
  the TeiidNodeFactory
AST Node refactorings for resolver

* XMLColumn should be in sql.lang rather sql.proc

* Statement should be abstract and not generated by javacc

* TableFunctionReference re-introduced to satisfy demands of resolver

* ExpressionStatement introduced to satisfy demands of resolver
Provisionally everything required to successfully compile teiid resolver

* The query resolver is used for resolving the parsed sql queries against
  the designer metadata. In order to resolve in the same way as the teiid
  server, the same resolver must be available on the client.

* Resolver should be near identical and backward-compatible
WIP