read README.rst as UTF-8

This is necessary on Python 3. The default encoding might be ASCII (for
example in a build system) or indeed any encoding other than UTF-8.

Use codecs.open since open doesn't accept an encoding in Python 2.
Add a hyphen to 'utf8', just for consistency with how we spell it in tracebacks.py.
Merge fix for Unicode decoding error when the default encoding isn't UTF-8. FIx #58.

Me and my silly em dashes....