Add proper flags, finalizing (removing GuessType) of filetypes, and stub out type guessing.
Add reading of files, counting of lines, and a stubbed-out source-lines filter.
Add caching of read files, to avoid reading the same file twice. Additionally force files to be fully read before readTypedFile can return, in order to prevent stdin's content being ignored until counted (which messes up any guesser that doesn't touch its contents, like the stub).
Add filtering for Plaintext.
Tweak an error message that theoretically nobody will actually see. Woo!
Implement simple filtering for remaining types.
Move startsWith out to the start since it's generally useful, implement guessing filetype by extension and shebang.
Implement quiet flag, and change ksloc flag to human-friendly sizes flag.
Implement human-friendly sizes flag.
Stop forcing early read-in of files, now there's no codepath that ignores their content.
Write usage message, and correct multiple interpretations of -h flag.
Add some perl support too.
Make that pattern exhaustive.