Add tests for setting verbose name

The motivation for this is that the auth_permission table has a maximum
length of 50 - see https://code.djangoproject.com/ticket/17763

We had a class with a long name - prepending "Historical" to the class
name meant that the name of the permission was over 50 characters long.

Once these tests pass, we will be able to set a shorter verbose_name and
hence workaround the above bug.
verbose_name handling for the HistoricalRecord model

The user can set the name for the model, or if the verbose_name is set
for the original model, that will be used as a base for the
HistoricalRecord model.
Merge branch 'master' into verbose_name

* master:
  Add @foobacca to AUTHORS file.  Thanks!
  Fix broken reverse relationship on models with history
  Add test to diagnose broken reverse relationship on models with history
  Update CHANGES file
Change string types to work with both python 2 and 3

Because we do:

    from future import unicode_literals

The string 'historical ' will be unicode.  So when it is concatanated
with the following str(..) the combined string will still be unicode.

But we still need to use str(..) as model._meta.verbose_name is not a
string to start with, but a proxy object.

In Python 3 it is just all unicode, the but the unicode() builtin is not
available.
Merge branch 'verbose_name' of github.com:aptivate/django-simple-history into aptivate-verbose_name

Conflicts:
	simple_history/tests/models.py
	simple_history/tests/tests.py
Fix tox and Travis configurations for Django 1.6
Fix various style issues (PEP8)
Fix wrong Django version in Travis configuration