Fix logging of unicode strings to streams in Python 2

When writing a unicode string to a file in Python 2, the string needs to be encoded before writing. This was handled properly in Logbook 0.4.1, but a bug was introduced in 0.4.2 which prevented this encoding from working properly.

The resulting problem can be reproduced easily by running this simple script with Logbook 0.4.2 on Python 2:

    import logbook

    log_handler = logbook.FileHandler('foo.log')
    log_handler.push_application()
    log = logbook.Logger('Foo')
    str = u'\u0431'
    log.info(str)

It results in this error within format_and_encode:

    UnicodeEncodeError: 'ascii' codec can't encode character u'\u0431' in position 30: ordinal not in range(128)

This commit restores the correct Logbook 0.4.1 behavior for Python 2.
Add test for outputting unicode strings to files
Merge branch 'master' of https://github.com/quantopian/logbook
Drop Python 2.5/3.2 support in tox and travis
Fix broken tests
Remove _stringfmt.py
#83: Drop support for 2.5, 3.2, code cleanups
#87: Accept 'True' as the exc_info argument
Badges
Fix typo
Cache was always invalidated
Prefer is to id()
Avoid testing for internals
Merge pull request #88 from omergertel/master

TestHandler formatted record cache was always invalidated
Update MANIFEST.in
Require Sphinx 1.1.3 for documentation tests

See https://bitbucket.org/birkenfeld/sphinx/issue/1159/sphinx-12b1-linkcheck-fails-on-references
Fix documentation warnings
Slight makefile fixes
Release automation