Improve command line parser by replacing parsec by optparse-applicative
add output handler for multiple files.
add custom distribution
adjust for hammer 0.4
print extra info to stdout
change permission of the files
update following mainstream changes