handle io.BytesIO object with file_wrapper

fix #595
Merge pull request #600 from matrixise/master

Close all the listener sockets
add -e/--env command line argunment

This command line argunment allows someone to pass an environement variable to
gunicorn:

	$ gunicorn --env FOO=1 test:app

With the command line above the application will be able to use the FOO
environment vatriable.
value can be None
remove useless lines in example
add --chdir option

chdir to specified directory before apps loading.

Ex:

	$ gunicorn --chdir ./examples test:app

fix #384
fix tests
monkeypatch wsgi.sendfile for gevent

make sendfile usage non blocking with gevent
monleypatch sendfile for the eventlet worker

makesure sendfile isn't blocking on eventlet
remove any notion of gunicorn in main WSGIApplication

if someone want to use a django application and load a specific module it is
better to use the --env option.
deprecate gunicorn_django
add the --paste option and deprecate gunicorn_paster

Instead of having multiple command line just use the gunicorn one.
gunicorn_django is deprecated as well.
fix wsgiapp loading
simplify the eventlet worker.

sockets are a;lready greened. make sure we also switch to the acceptor quickly.
bump to 18.0
oups this the 17.6 version
Revert "oups this the 17.6 version"

This reverts commit bb71bc841f7422333324b95c988ba0677779304d.
update the changes
typos
Only compiled some regexes used in HTTP parsing once

Currently they are parsed and compiled once per-HTTP request, which is
unnescary computation and makes stuff slower than it could be.