Optimization of co-occurrence matrix construction.

Use a vector of unordered maps to represent the matrix. Use single
instead of double precision for this representation to save memory.
This results in lower memory usage and around a 50% speedup.
Remove references to the cooc map.
Merge pull request #15 from maciejkula/corpus_opt

Further optimization of co-occurrence matrix construction