Some enhancements

Hi, this is pull request of some features added to fast-tagsin period after version 0.0.5 when it wasn't particularly actively developed in the main repository.

New features include:
* recognize more syntactic constructs (consider tests as specification of what's handled)
* add more tests
* use tasty to organize tests
* ability to produce emacs tags
* handling of literate files
* new mode to recursively traverse directory tree and search for haskell files
* optionally ignore encoding errors during reading and skip offending files
* ability to read \n-separated or \0-separated list of files from stdin
* and blazing-fast speed of tag generation is presevred

I realize that this pull request is anything but atomic but it contains some useful features that I believe should be in the official repository.