Support for non-numeric features in scikit-learn wrapper, using DictVectorizer

As discussed at #450. Also simplified the code a great deal, fixed some errors in the docstrings and improved the example a little bit.

I did not expose the underlying data structures yet.