Add x faceting to support XCluster AND X.

Big (partly complete) change:

frenchfries has an X as well as a XCluster.  it works in the sense that it draws something, but I'm not sure what it is exactly.

bugs:
* if there's no X at all it might not work
* brushes are turned off (since the status of 'x' is unclear)
constantAxis can now have range updated.
'fixed' most plots for x faceting support (even if they don't use it).

brushes still deactivated.  I may have multiple x axes atm.
updatd plots to work with new cluster/facets
update diamonds.  does sampling to reduce data size.

update mpg.
constantAxis rangeval goes to middle
bug fix, and preserve padding in ordinal axes.
add second (also boring) plot to movies.
more bug notes in hierarch - I need to write a whole new one.
restore limited filter functionality
enabled brushes for masterX (may not be perfect but OK for now).

unlikely to play nicely with XCluster - it has the whole graph size even if the data is sliced on the X axis.

seems OK with YFacet
indometh and tips have filterable tables.  that don't work too well.
make tips do clustering so I can test out multi-axis brushing
overlay x axis on top of xcategory axis
place the brush on the first facet.  not ideal I guess - it should move cleanly between them.
note on leaving space in x axis for real x axis as well as hier.
tweak diamonds.
rename d3plot & friends to g3*
added unmodified d3...partition and d3...hierarchy for testing.  I'm going to tweak them.
inner partitions are now evenly spaced.  nice.

added test showing how it works.