Cache tokenization.

Scoring took a large hit when we decoupled the gathering step, since
there was no longer a central place to collect all news terms.
Revert prototype optimization.
Use properly dereferenced and indexed URL field.
Use PriorityQueue to save memory (O(limit) instead of O(tweets).)
Use proper exception.
Exit early if gathering failed.
Refactor querying.
Store _id field name.
merge
Revert 7c3265 and 5cb752.
Add experiment for double retweets.
merge
Refactor.
Move tweettokenization to more convenient name.