utsname: wrap uname properly.

Close #154.
* specs/posix_spec.yaml (uname): Move from here...
* specs/posix_compat.yaml (uname): ...to here. Add diagnose bad
option example.
* specs/posix_sys_utsname_spec.yaml (uname): Specify correct thin
binding for uname(2).
* specs/specs.mk (specl_SPECS): Add posix_sys_utsname_spec.yaml.
* ext/posix/sys/utsname.c (pushutsname): New function to push
a table with struct utsname fields.
(uname): Use it to push the actual results of the call.
* lib/posix/compat.lua (uname): Rewrite old format specifier
replacing API here for backwards compatibility.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>