bugfix: handle invalid TLS pointer in handle_* functions

also - make all those functions static

Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>
rename file close functions

Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>
support epoll function renaming

keep a shadow copy of all epoll file descriptor sets and rename calls to
epoll_wait using the constituent FDs. For example, a call to
    epoll_wait(epfd,...)
where epfd contains a Socket, and two pipes woul be renamed:
    epoll_wait_PPS

Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>
handle prctl, and make better guesses on FD type

use /proc/self/fd/XX to guess at unknown file descriptor types

Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>
don't push thread cleanup routing onto main thread

Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>
cleanup some messy wrapping code

Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>
better handling of exec functions

Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>
remove libc debug locking garbage

Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>
indicate FD on which read/write calls operate

Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>
re-adjust cache sizes for increased logging speed

Signed-off-by: Jeremy C. Andrus <jeremya@cs.columbia.edu>