Fixed dynamic admin inlines for subclasses doing fields magic
(assuming that InlineAdmin.fields is a user-provided list).
Added a test for DynamicInlineAdmin.
Travis test the latest versions of Django

This way you don't have to update every time a security release comes
out.
Re-instate conf test as per recent threading fixes. Closes #858.
Merge
Return HTTP 405 on comment/rating URLs for GET requests. Closes #1159.
Allow DynamicInlineAdmin fields to be a tuple.

Previously, if fields was defined as a tuple, a very confusing TypeError
would be raised.
Fix Travis Django installation
Shamelessly modified the dynamic admin fields tuple test, so it checks
get_fieldsets() instead of directly using the fields attribute.

Also made BaseDynamicInlineAdmin work when fields are listed without
the _order field or fieldsets are declared (with or without it).
SiteRelated changed to allow explicit site assignment on creation
Merge
pep8 fix
Use translated strings in relevant settings examples in project template.
Merge
Merge
Added Kelvin Wong to AUTHORS.
Added a new USE_MODELTRANSLATION setting.

If set to true, modeltranslation is inserted into optional apps and
content translation code becomes active. The setting also controls
modeltranslation autodiscovery, so content translation may be used
without I18N.

Other than that, default Mezzanine configuration is already suitable
for multilingual projects, i18n and languages settings, i18n context
processor, locale middleware and i18n patterns are in place.

The setting is visible in templates and if the modeltranslation
can't be found it's reset to False.

TODO: The two other added settings are somewhat advanced and can
      probably be dropped.
Registered all Mezzanine content for translation.

Excluding keywords as they need special handling due to generics, but
including the abstract Displayable as it's instantiated for sitemap
generetion.

Base classes need to be registered for translation before their
descendants, so the installed apps order needed to be modifed a bit.
Made all translations of derived fields update themselves on model save.

The generated fields that needed processing with all languages were:
Slugged.slug, MetaData.description, Displayable.short_url, Page.titles.
Note that when generating description one needs to be careful not to
use existing translated description.

Factored out two helpers that may be useful for similar tasks in user
code. The disable_fallbacks context prevents getting value from a
default language when one for the active one is missing, useful when
you need to know if a value in the current language is available.
The for_all_languages function executes a function with each of the
available languages activated in turn.
Implemented keywords translation.

Assignments are intended to be the same for every language, thus only
Keyword.title and keywords_string (on concrete subclasses of MetaData)
are made translatable, with the latter recomputed on change for all
languages as with other derived attributes.

Page admin only allows entering keywords in the active language (there
doesn't seem to be any sensible way to inline translations), so
KeywordAdmin (under Content menu) is exposed separately to make it
possible to translate keywords.