Change greppy design

I have changed the design as followed:
- SimpleMatcher has been renamed to Matcher and has become
  the parent class of HtmlMatcher and BashMatcher.
- Add context management:
 -- StreamManager manages the logging to a file or a shell
 -- Abstract/interface class IStream.
 -- HtmlStream implements IStream and handles the writing in HTML format
    to and closing the file
 -- BashStream implements IStream and handles the printing in Bash prompt