reduced redundant code, created MarkovDict class

MarkovDict contains the dictionary as well as the startList, build
functions for those in __init__
merged loadMessages() and loadReasons() to function with filname as
argument, returning a MarkovDict
necessary refactoring because of mentioned changes
moved redundant code in loadUsers() to helper functions