Cache words per doc in memory, read file only once, reduce to 0.8s