SPI rework

Reviewed package structure and API vs SPI problems.

 - https://hibernate.atlassian.net/browse/HSEARCH-1673
 - https://hibernate.atlassian.net/browse/HSEARCH-1730
 - https://hibernate.atlassian.net/browse/HSEARCH-1739
 - https://hibernate.atlassian.net/browse/HSEARCH-1740