Handle Windows line endings correctly in setup.py
Handle Windows line endings correctly in setup.py

codecs.open doesn't implement universal newlines handling, which
causes metadata parsing problems if the `README` file uses
Windows line endings.

Switching to io.open instead gives the Python 3 open()
semantics (the main reason to prefer codecs.open()
instead was for Python 2.5 support, which is no longer
a concern)

Prompted by https://github.com/pypa/packaging-problems/issues/160
pypa/sampleproject