Separates autocomplete functionality from trie data structure

*makes trie a separate module
*encloses any code to be run in an imported module(keypress,autocomplete)
 in a function
*renames certain key functions (split_file=>tokenize)
*adds functions that:
 -construct a corpus from files
 -return all files in a specified path/subfolder pair
*adds integration tests; at current, these do not include assertions
 but do allow the user to examine functionality

Bug Fixes:
*encloses setup in keypress module so that importing will not
 mess with terminal
*makes creation of the default corpus (shakespeare) in autocomplete
 a function that only gets called when necessary (to prevent conflicts
 with )

Bugs:
*files are not being opened in tokenize because what should be
 a part of the str(path) for the file is being read by python as a
 directory
Adds helper functions for testing

*adds function for testing corpus construction
*adds function for testing autocomplete functionality
*refactors make_corpus function to always return a Node object
Fixes bugs

*fixes path problem in get_files function (that had been affecting tokenize)
*alters tokenize to only accept a single file at a time

Bugs:
*'name' from get_files function is printed as 'hakespeare'
 instead of 'Shakespeare' (appears to be a problem with strip())

Notes:
*runs very slowly
*previous version of program seem to have been much faster and had fewer words

To-DO:
*profile to ensure that the corpus being read was, in fact, the entire
 collected works of Shakespeare (and not a file at a time)
*profile to see whether tokenize accepting one file at a time makes a
 difference in speed
*refactor using generators and examine speed gains
Adds functions for wordcount and word frequency

*adds unittests tests (for wordcount & frequency)
*separates token function from tokenize to allow changing of
token formatting
*adds 'integration tests' for examining basic functionality

Bug Fixes:
*fixes the incorrect printing of name in get_files()
Adds files/directories to .gitignore
Adds benchmarking module

*Compares linear search to searching using Trie data structure
Small modifications

*changes return value of frequency function (now includes a count)
*removes benchmark.py from .gitignore
Fixed CPU overuse
Did some things bug most importantly - SEG FAULT!

Bugs:
*Segmentation fault:
- seems to be caused by keypress.use_letter (does not happen when autocomplete is
 called without keypress
- happens when after KeyboardInterrupt
- does not seem to happen when you KeyboardInterrupt before typing any
 letters to autocomplete