tests: remove utee and use tee(1) instead

POSIX already stipulates tee(1) must be unbuffered.  I think my
decision to use utee was due to my being misled by a bug in
older curl where -N did not work as advertised (but --no-buffer
did).
tests: replace non-portable "date +%s" with ruby equivalent

"date +%s" is not in POSIX (it is in GNU, and at least FreeBSD
9.0, possibly earlier).  The Ruby equivalent should be
sufficiently portable between different Ruby versions.

This change was automated via:
	perl -i -p -e 's/date \+%s/unix_time/' t/*.sh
tests: "wc -c" portability for *BSDs

On FreeBSD 9.0, "wc -c" emits leading whitespace, so
filter it through tr -d '[:space:]' to eliminate it.
tests: bump version dependencies for Isolate

Most of these test dependencies may be safely bumped.
tests: "wc -l" portability for *BSDs

On FreeBSD 9.0, "wc -l" emits leading whitespace, so
filter it through tr -d '[:space:]' to eliminate it.
hijacking support for Rack 1.5.x users

This requires Rack 1.5.x and unicorn 4.6.0 for hijacking
support.  Older versions of Rack continue to work fine,
but we must use unicorn 4.6.0 features to support this.
GIT-VERSION-GEN: rewrite to manage RAINBOWS_VERSION const

This DRYs up versioning and makes packages easier to distribute.
gemspec: set licenses= attribute

Old versions of RubyGems which could not handle this attribute
are likely no longer in use.
bump unicorn dependency to 4.6.2+ for Ruby 2.0.0

This ensures we're compatible with the latest stable
Ruby version.
tests: update checks for Ruby 2.0.0

EventMachine/NeverBlock currently do not build on Ruby 2.0.0
doc: add HACKING document

Thanks to Alex Wolfe for noticing.
xepoll_thread_*/client: EPOLLONESHOT implies EPOLLET

No need to specify both flags for epoll (confirmed by reading
fs/eventpoll.c in the Linux kernel).
epoll/*: remove user-space array as active queue

This prevents pathological starvation cases where the user-space
ready-list can be repopulated infinitely.  With EPOLLONESHOT,
epoll itself may be used for this task (at a slightly higher
cost) by enabling read/write checks, as the epoll ready-list
preserves event ordering when used with EPOLLONESHOT.
manpage: update middleware-related documentation

-N/--no-default-middleware needs a corresponding manpage entry.

Additionally, the Rack::Chunked/ContentLength middleware comment
is out-of-date as of unicorn v4.1.0
Rainbows! 4.5.0 - hijacking support

This release adds hijacking support for Rack 1.5.x users.
See Rack documentation for more information about hijacking.
Lin Jen-Shin also provided the -N/--no-default-middleware option.
Minor packaging cleanups and new HACKING document.

There are also some corner-case bugfixes for *Epoll* users
(sleepy_penguin, these bugs do not affect EM or Cool.io users)
and test suite portability improvements.
epoll+xepoll: clarify intent of these concurrency options

Via private communication, I learned of a user using XEpoll
when he should not have been.
test_isolate: update raindrops to 0.11.0

raindrops 0.11.0 was released several days ago and contains
minor improvements + fixes.
SIGNALS: document SIGHUP/preload_app incompatibility

This was documented in the unicorn docs, but not Rainbows!
(The major difference between unicorn and Rainbows! signal
handling is the deferred handling of SIGUSR1 in unicorn vs
the immediate handling in Rainbows!)