Various cleanups (C99, usleep macro, SIZE is a constant, "arrow keys")

1. `u_int16_t` and family are not supported in modern C, so you should use the `<stdint.h>` types instead.
2. Constants in C are defined as preprocessor macros, not as `const` values.
3. A string instructing users to press their "arrow" keys instead said "ararray", presumably due to a sed gone bad.
4. `usleep` requires a feature test macro as it has been deprecated for a while.