1) optional arguments (e.g. OPEN)

3) partial list of section 2 manpages from Debian Linux box: functions
we may want to consider interfaces for.  Some of the obviously
unnecessary/dangerous functions have been deleted from this list, as
have the ones we've already got bindings for, but even so, inclusion
in this list does _not_ imply we've definitely decided something needs
adding.

FD_CLR FD_ISSET FD_SET FD_ZERO accept acct adjtime adjtimex bdflush
bind break brk cacheflush capget capset clone connect create_module
delete_module execve exit flock fstatfs ftime getcontext getdents
getdomainname getdtablesize getgroups gethostid gethostname getitimer
getpeername getpriority getrlimit getrusage getsockname getsockopt
gettimeofday gtty idle init_module ioctl_list ioperm iopl listen
llseek lock madvise mincore mknod mlock modify_ldt mount mprotect mpx
mremap msgctl msgget msgop msgrcv msgsnd munlock nanosleep nice pause
poll prctl pread prof profil pselect ptrace pwrite query_module
quotactl readv reboot recv recvfrom recvmsg sbrk
sched_get_priority_max sched_get_priority_min sched_getparam
sched_getscheduler sched_rr_get_interval sched_setparam
sched_setscheduler sched_yield select semctl semget semop send
sendfile sendmsg sendto setcontext setdomainname setgroups sethostid
sethostname setitimer setpriority setrlimit setsockopt settimeofday
sgetmask shmat shmctl shmdt shmget shmop shutdown sigaction
sigaltstack sigblock siggetmask sigmask signal sigpause sigpending
sigprocmask sigreturn sigsetmask sigsuspend sigvec socket socketcall
socketpair ssetmask statfs stime stty swapoff swapon syscalls sysctl
sysfs sysinfo times ulimit umount uname ustat vfork vhangup wait3
wait4 writev

4) In the spec but not implemented:

- buffers

5) fill out TODO/TBD stuff in the spec

6) sort out exports.  All interface functions, all constants, all
  type coercion functions

7) variable-length functions > like execvp()? Do they take a list, or
vector or either? "Either" sounds good. Which is to say, a sequence.

8) In some cases, errno is used for "normal" exit, not just for
exceptional exit. For example, EINTR, EAGAIN, reading or writing big
buffers, etc... It may be more efficient to just compare two integers
than going thru an exception mechanism that will be invoked everytime.

9) proper alien definitions of structures [ possibly an sb-grovel
problem, but the way we define calls exposes the problem -- see
readdir() ] [ isn't this done? ]

10) some functions (e.g. fdatasync, putenv) have a return value which
is purely an error indicator.  Currently we're returning the 0 on
success, but maybe it would make more sense for them to return
(values).
