Fix cat and use file descriptors instead of FILE *

cat was working incorrectly with stdin, as fread blocked even when there
was data avilable to read. The fix was to replace the usage of FILE *
with file descriptors, and use select() + read() to wait for data and
read/write it immediately.
Add 'wc' utility

wc prints various statstics on the content of a file or files.
Fix small printing error with seq
Updated 'tee' to use file descriptors.

Without using file descriptors, tee had the wrong behavior when using
stdin as the source.
Fix open() error checking error in 'cat'