Added support for collection based smoothing

Added a collection model class that can be used to smooth probabilities of
terms during top terms selection. The model can be used for other purpose
too such as document ranking. A model for a news source can be accessed
through a static method from anywhere once it is been loaded or computed.

Currently the word weight comparator is using the following formula for smoothing

smoothedProb = (1 - beta) * termWeight + beta * collectionProbability

The parameter beta is specified in WeighingConfiguration.java