Doctests and clustering methods

Added a couple of doctests to the simpler functions in preprocessing.py
Added DBSCAN and KMeans clustering to cluster.py

Unsure how to add a test to something non-deterministic like DBSCAN -- maybe apply clustering to the iris dataset with a fixed random-state?
Same comments as above.

Another nice wrapper!

I would replace this directly with minibatch Kmeans, because it's scalable and on-line.