Improved hgrep

- handles stdin and multiple files and tries to be as much like grep
  as possible
Preserve grep's exit code
Only show header line if file has a match
Support passthrough grep colourization
Add perldoc
Add README
Remove newline prefixed to 1st stdin line

- not sure why it was ever there, since it pointlessly puts an
  empty line in front of the header when reading from stdin
Live dangerously with no warnings
Only handle file args if NOT reading stdin
Don't grep header line, just always output it
Force STDOUT autoflush when reading STDIN

- otherwise the output from grep will show up before the output of the
  header line (because the header line's output is likely small and less
  than bufsiz, while grep's will likely be larger)