SearchResultController updated to allow opening of text files through
clicking on filenames on results viewer.

Other classes updated only to pass the GUI objects around to controllers
for access to methods to return specific components or variables (such
as the tabList and tabCounter which keeps track of what tabs have been
created so far and to stop users from opening 5 tabs with the same file
contents - if they try to open the file while it's already open it
simply redirects the current tab selection to the opened file)

GUI class is passed so the actual GUI can be updated (new tabs).