More clustering functions

- LandmarkAgglomerative is hierarchical clustering that can scale to large datasets and predict labels for new data points
- NDGrid is "clustering" that just assigns each point to the index of a cell in a regular cartesian grid. Just binning.

The implementations all use a private class (e.g. `_NDGrid, `_KCenters`, `_LandmarkAgglomerative`) which processes a single `n_samples x n_features` data array, and then there are public classes (e.g. `NDGrid`, `KCenters`, `LandmarkAgglomerative`) which use semi-shady multiple inheritance-y stuff to accept multiple trajectories (the public fit() methods take lists of arrays).