Changes to XML schema for aggregate tables: <AggTable> is one option (will probably back out); and <MeasureGroup type=aggregate>.

Add 'copy' method to XML classes that implement Holder. Should allow us to unify the read and write list interfaces to get/create child elements in future.
Add SPI for getting statistics from the underlying database (number of rows in a table, number of unique values in a column). SPI is mondrian.spi.StatisticsProvider, and there are implementations JdbcStatisticsProvider (uses information from JDBC, mostly from indexes) and SqlStatisticsProvider (gets statistics by executing queries, as at present).

Which provider is used depends on a new property, mondrian.statistics.provider.
Oops. Broke JDK 1.5 and earlier.
Oops, again.
Fix statistics provider on Vertica. (Vertica does not support distinct-count.)

Also fix DialectTest for Postgres.
Merge branch 'lagunitas' of github.com:pentaho/mondrian into lagunitas
Merge branch 'lagunitas' of github.com:pentaho/mondrian into lagunitas.
Merge branch 'lagunitas' of github.com:pentaho/mondrian into lagunitas
Fixes a few failures due to the presence of  in the intrinsic properties of members.
Implement ForeignKeyLink.attribute (allows a fact table to link to a non-primary attribute of a dimension); fixes ParentChildHierarchyTest.testLeaf, among others.

Make RolapAttribute an interface. Each attribute now belongs to a dimension; use wrappers to implement "intrinsic attributes" such as All.

Add Tuple3, the equivalent of Pair for 3 values.
Oops. Fix build error.

Add "~" (emacs backup files) to .gitignore.
Fix name-resolution issue. Make ParentChildHierarchyTest tests use legacy.
Fix MONDRIAN-1124, "Unique name of hierarchy should always have 2 parts, even if dimension & hierarchy have same name", and fix a lot of reference logs.

Disable Olap4jTckTest; MONDRIAN-1129 logged, to remind us to re-enable it.
Fixes an issue with unique names and the way they were assigned to members. I've removed a short-handed constructor from RolapMemberBase to force all the code to resolve properly the name and type of the members that get created and then everything started falling into place. I've also removed the code related to triggers and eigenbase properties from AggTableManager. The code is smart enough to figure out when to use agg tables or not, so there are no reasons to add triggers. The triggers were not getting reset properly in the test suite when errors were thrown. If an exception was encountered while running the first trigger, the others wouldn't get notified and the system was entering in an 'invalid' state. There are now only 488 tests failing, but most of them are about naming problems or legacy schema usage. I think we can easily clear 200 of them. I've also fixed some coding format issues.
Makes RolapMemberBase us the parent depth as an absolute reference. Works much better with member wrappers and cache control.
Fixes for ragged hierarchies (in particular null members), virtual cube tests, multiple uses of same table with different aliases.
Merge branch 'lagunitas' of github.com:pentaho/mondrian into lagunitas

Conflicts:
	demo/NewFoodMart.xml
	testsrc/main/mondrian/test/SchemaTest.java
Merge pull request #7 from imd/style

Size hyperlinks the same as surrounding text.
Merge pull request #6 from imd/typos

Fix some typos in the manual.
Just a few fixes to PC tests.