Reverted changes pertaining to holding DocumentFeature-s in a shelf because populating the shelf at startup takes too long (even though using it later is faster)
Removed unnecessary information returned by PrecomputedSimilaritiesVectorSource.get_nearest_neighbours to speed it up by an order of magnitude. This breaks compatibility between its API and that of CompositeVectorSource, which is ok as the latt
    (cherry picked from commit e54912b)
Updated unit test of Token (NER tag not used in __eq__, __lt__,... methods any more). This is a cherry pick from a few days ago.
Generalised the API of Thesaurus with a column and row filter functions
Removing very longs thesaurus entries (50 chars)
Added a guard condition to prevent multiple vectors to be written for the same entry. This confuses Byblo and results in cosine sim>1.

Only Socher thesaurus seems to be affected. The duplicated vectors got there because previously I considered a word with different NER tags to be different features. Socher's code does not check if its inputs are duplicated.
Added a limit on the number of thesaurus neighbours/features loaded from disk to limit memory usage
Fixed bug in thesaurus where lexical overlap filterign was done AFTER max_neighbours filtering, which results in very small or empty neighbour lists. Also changed the default value of lowercase in Thesaurus (and renamed that parameter).
added a test resource
Added a convenience method to thesaurus (loads from shelf)
Added a preserve_order option to Thesaurus.to_tsv
Reduced min_similarity in Thesaurus

Using 0 results in removal of features when using SVD/neural embeddings that contain negative values
Broke up Thesaurus

This class was used to store both neighbour lists and feature lists. With
so much functionality crammed into a single class problems would often
arise.
Merge pull request #5 from mbatchkarov/master

Version 0.2