Increase modularity

* DirectoryRenamer now registers listeners. This can be used to have a logger listen for output.
* DirectoryRenamer now takes a specific renamer function. This can be used for use on different file
  systems.
* Removed unused and deprecated code from app.py.
* Overhauled rename_shows_in_directory(). It now takes a function to use to get episode names rather
  than a boolean to signify imdb.
* Created local_rename.py to use for passing in DirectoryRenamer in the case of a local rename.
* Created imdb_rename to return a list of episodes for imdb renames.
* Fixed hidden file bug in filerename.
* Moved some utility code out of file rename and into common.py.

Nature: Bug Fix and Code Improvement