Fixed the bug caused by conflating words in the text for words in the classifier
Fixes None return type error
Adds contribution function which moves 'word not found' consideration into its domain

* removes notfoundfn
* removes unnecessary print statements

Bug:
* When a statement including 2 unknown words and 1 word from each classifier is submitted for training, the classifier classifies them as having zero probability of being of those categories (instead of a small probability)
 => This occurs because the conditional probability of a word that is in the corpus but without any occurences of it associated with that classifier returns 0. This means any other probabilities that include the conditional probability in the numerator or denominator are also zero (in this case, the 'contribution' function for prediction)

 => Question: how should these be properly dealt with? In a manner similar to words that never appear in the corpus? (perhaps with a very small probability being associated)
Removes duplication of edge case checking (when the word is not found)