Start replacing select.select() for select.poll()
Move poll() logic to it's own class, and adapt Supervisor to use it.

Also fixing the poll() usage, my previous commit was registering all
file descriptors to all events, now register just on the expected events.
Remove select() method from Options class used by Supervisor
Ignores and unregisters closed file descriptors on poll()
Adjust log message to be more explicit
Handle POLLHUP on poll()
Add kqueue() support for poller
Add select() support for poller when no poll() or kqueue() is available. Make all tests pass for py>=2.5
Handle EBADF on kqueue poller backend
Use set instead of list for readables and writables on SelectPoller
Restore kqueue after daemonize because it's not inherited on fork()
Remove file descriptor from sets on unregister() for kqueue poller
Make test_socket_manager tests pass on PyPy

by applying patch from pjenvey on IRC:
http://paste.ofcode.org/a588X46F8gNdFDSHDtK5NP
.travis.yml: Add pypy but allow fail

Conflicts:
	.travis.yml
Add Python 3.4 to travis
Document the supported versions of Python in setup.py

This lets tools like "caniusepython3" introspect correctly.
Merge pull request #428 from alex/patch-1

Document the supported versions of Python in setup.py
Warn about empty globbing of `include.files`

Fixes #345
Add test and changelog entry for 2aef402eb08cadcd9afc87d28cdcab7107bb3e02
Strip trailing whitespace