Reorder ``LocaleMiddleware``

The Django docs (https://docs.djangoproject.com/en/dev/topics/i18n/translation/#how-django-discovers-language-preference)
say this about the ordering of ``LocaleMiddleware``:

>   * Make sure it’s one of the first middlewares installed.
>   * It should come after SessionMiddleware, because LocaleMiddleware
>     makes use of session data. And it should come before
>     CommonMiddleware because CommonMiddleware needs an activated
>     language in order to resolve the requested URL.
>   * If you use CacheMiddleware, put LocaleMiddleware after it.

Addresses #660
Use ``HttpRequest.body``

Use ``HttpRequest.body`` instead of ``HttpRequest.raw_post_data``
as ``HttpRequest.raw_post_data`` is deprecated

Addresses #660