Fix my_sleep_msecs argument type

The function prototype of my_sleep_msecs (in my.h) accepts an unsigned int
while its definition (in my.c) accepts an unsigned long int.

The function is only called from tui_sys_sleep which accepts an unsigned
long int, so the intended type seems to be unsigned long int.

Thus, the prototype is changed to reflect the intended type.
Check for linux before unix

Usually linux systems also define __unix__ so the code must check
for __linux__ before checking for __unix__ otherwise linux systems
will be wrongly identified.

At this point it doesn't matter because MY_OS_LINUX and MY_OS_UNIX
have the same behavior but this may change in the future.
Document VMIN and VTIME

VMIN means the number of characters that must be available
in the input queue for read to return. VTIME is the timeout
value between characters.

The first variable that is honoured is the count parameter of read
function call. migf1 calls read with MY_MAGIC_MAX_CHARS (18) so
if the input queue contains 18 or more characters, read will
immediately return outputting 18 characters.

If the input queue contains less than 18 characters we come
to the VMIN / VTIME couple. VTIME kicks only after the first byte
is read, so if there is no character in the input queue, the call
will block until the first character is read. Afterwards, read
will return either if VMIN characters are read or VTIME is exceeded.

So, in practice, because VMIN is rather large, read call will return
1 * 0.1 seconds after the first character is read and output the
one (or two - three if a "special" key is pressed) it read.
Replay files should always use CRLF
Merge pull request #7 from imitheos/migf1-approved

Migf1 approved