[MONDRIAN-1729][SP-632]  "Query required more than 12 iterations" error when query should complete.

This change addresses a case where the ordering in which segments are processed by SegmentBuilder.rollup() could impact the resulting segment.  In some cases,
if a column of the second axis was wildcarded, it could incorrectly result in the axis being set as having incompatible predicates (lostPredicate=true).  Similarly,
the intersecting values could be mishandled, depending on the ordering of segments with wildcarded columns.
Test cases committed with this change check for equivalent rollups with segments processed in forward and reverse order.
Merge pull request #157 from mkambol/MONDRIAN-1729

[MONDRIAN-1729][SP-632]  "Query required more than 12 iterations" error when query should complete.
[ENGOPS-142] Match up mondrianschemaworkbench plugins version.
Mondrianschemaworkbench plugins project should match up with Mondrian versioning. Version propertization allows the release builds to automatically map any release version of this artifact with the matching Mondrian version.
This is follow-up work for the versioning scheme used for the 5.0.0 Pentaho Suite release.
xref commit  https://github.com/pentaho/pentaho-mondrianschemaworkbench-plugins/commit/5f1d3fef2ea5a39ae7feb27ae9f66f436212ddb0
[MONDRIAN-1729][SP-632] Missed a case where the first header loaded (used for initializing the AxisInfo) contains a wildcarded column that should be downgraded to
a specific list when computing segment intersection.
MONDRIAN-1658 - handling the case where a crossjoin is given an empty set for one of its parameters.
[MONDRIAN-1729][SP-632]  Made the segments list an UnmodifiableArrayList.
Merge pull request #161 from kurtwalker/MONDRIAN-1658

MONDRIAN-1658
Merge pull request #160 from mkambol/MONDRIAN-1729

[MONDRIAN-1729][SP-632] Missed a case where the first header loaded
[MONDRIAN-1766]  Role restrictions are not honored in some cases if the number of MemberGrants exceeds the maxconstraints property value

This change introduces a final pass filter of the tuple list generated by NativeSet to assure that all items in the list are accessible.  Since this could be costly,
it short-circuits the checks except where one or more hierarchies actually have a role restriction defined.
[MONDRIAN-1766]  Code cleanup.  Inlined conditional.
Merge pull request #168 from mkambol/mondrian-1766

[MONDRIAN-1766]  Role restrictions are not honored in some cases if the number of MemberGrants exceeds the maxconstraints property value
[MONDRIAN-1694]  Mondrian applies non empty to native filter when "matches" is used.

This change adds a check for NonEmpty prior to applying a context constraint when evaluating a native filter.  A SqlContextConstraint forces a join to the fact table,
which will drop any tuples not associated with fact data.
Merge pull request #169 from mkambol/1694

[MONDRIAN-1694]  Mondrian applies non empty to native filter when "matches" is used.
[MONDRIAN-1694]  Native filter now omits a join to the fact table in a larger set of cases,
and I missed fixing the expected sql in a couple tests with the previous checkin.
Merge pull request #170 from mkambol/1694

[MONDRIAN-1694]  Native filter now omits a join to the fact table in a larger set of cases,
[MONDRIAN-1696] Makes the mondrian version a generated class.
[MONDRIAN-1696] One small tweak to support TRUNK-SNAPSHOT as a version string.
[MONDRIAN-1785] Pulls up a couple methods form ImpalaDialect into HiveDialect regarding quotes and quoting characters.
[MONDRIAN-1785] Fixes issues with Hive. A lot of SQL related classes had to be fixed. The alias was not used consistently according to the dialect rules. Now all SQL generated uses the aliasses correctly.
[MONDRIAN-1785] Removes the change to MonetDB. Should not have been committed.