Update the way LOGIN_URL is called

Since [`django 1.5`](https://docs.djangoproject.com/en/1.5/ref/settings/#login-url) it is possible to use [named url](https://docs.djangoproject.com/en/dev/topics/http/urls/#naming-url-patterns) instead of hardcoded url in `settings.LOGIN_URL`.

The fact that the url is hardcoded could cause some infinite loop as the url would never be resolved if it's a named url.

https://github.com/incuna/incuna-auth/blob/master/incuna_auth/middleware/login_required.py#L67


There's a lot of duplication in these tests. Perhaps a helper method or two would be useful.