Removed min_count_autoadjust - using MemoryError was too prone to problems. Instead, I moved the vocabulary reading code into vocab_counts so I can cache that value separately. I also added code for adjusting min_count to give a certain maximum vocabulary size (which can be chosen to avoid running out of memory independent of the corpus size.)

The separate invocation of vocab_counts allows me to read the vocabulary once (time-consuming on large files) and then experiment with different memory sizes and then finally put this into the final training.