split text into word array, normalize words
abstract normalise_text into method
create set to find unique words, abstracted into unique_words method
count number of words OR number of unique words based on optional argument to method how_many_words
count occurances of each unique word in original string, abstracted to unique_words_count method
use unique words => counts hash to calculate most common word (over optional minimum length)
sort unique words by length to return all unique words of greatest length