Use requests instead of urllib2.

This has the benefit of not raising an exception for 404s.
pep8 style fixes.
Convert from str to unicode by decoding in utf-8. Fixes #9.
Use r.text instead of r.content for automatic decoding.
Add requests to setup.py and requirements.txt.
User-agent -> User-Agent

This doesn't make a difference for me, but might for other people.
merge pull request #18