Add compile-time option to choose the precise semantics of an utility.

Each utility have some implementation-defined behaviour. The user can choose
which behaviour will be emulated:
- 'posix': Implement the bare-minimum functionality required by the
  POSIX.1-2008 standard.
- 'xsi': Same as 'posix', plus all XSI Extensions.
- 'gnu': Emulate GNU's utilities.