Update README to reflect new home page, APT repos
Output proper error message when catching System_error
Remove cruft from Makefile
Update README to reflect new home page
Disable ptracing before calling setuid, rather than after

This avoids a small window where a process could be ptraced by another
process running as the unprivileged UID.
Fix typo in man page
Support transparent connections from the local host
Makefile: avoid use of non-standard $^
Fix #includes
Disable Linux-only features on non-Linux OSes

Linux-only features are: using prctl to make process un-dumpable
and transparent sockets.

Currently checking the __linux__ macro to determine whether to
enable these features.  This is only temporary until we have a
better build system.

Unfortunately, the inability to disable ptracing makes titus quite
a bit less secure against arbitrary code execution vulnerabilities,
so keep this in mind when using titus on a non-Linux OS.  Long term
titus will use a different UID for every process so we won't need
to disable ptracing.
Add warning to README about isolation on non-Linux systems
Use setrlimit(RLIMIT_NPROC) to prevent forking

This will prevent denial of service by fork bombing, and also pave the
way for using a distinct UID for every connection (since we won't have
to worry about killing off latent processes owned by the UID).
Use select() instead of poll()

poll() fails with EINVAL if nfds exceeds the RLIMIT_NOFILE value.
Since I plan to set RLIMIT_NOFILE==0 as a security measure, poll()
is unusable.  select() does not have this restriction.
Set RLIMIT_NOFILE==0 in unprivileged processes

This prevents an attacker who gains arbitrary code execution
from creating sockets and launching attacks on the network.
Rework key server flow
Make resolve_address behave more sanely if host or port are omitted
Add prelimary vhost support
Switch to C++11, make extensive use of RAII
Add SNI support
Make SNI strict: Error out if no vhost matches the server name