hmlgrep: implmented --count, --invert-match, --timestamp

* Implmented --count, --invert-match, --timestamp options
* Updated TODOs
* Partially fix issue using a pattern that is also a path name of
  existing directory. (You still cannot use a pattern that is also a
  path name of existing regular file)
hmlgrep: refactor runPipe to take outHandle argument as well
hmlgrep: exit with error if no match is found.
clean .o and .hi files