Add the concept of token authentication to the API

Install the `rest_framework.authtoken` app which allows you to add
authentication tokens for particular users. This will allow us to make
eg a `surge-model-collector` user with their own token.

We've currently got only read-only endpoints so this shouldn't have any
effect, but it is required for implementing the writeable
surge/measurement endpoints.

[#78037278] [#80542816] [#78441914]
Upversion djangorestframework 2.4.1 => 2.4.3

Which provides new migrations for `authtoken` app.
Merge pull request #102 from sealevelresearch/rest-framework-authentication

Add the concept of token authentication to the API
Use django rest framework 3.0 pre-release

See https://github.com/tomchristie/django-rest-framework/blob/version-3.0/docs/topics/3.0-announcement

Bear in mind for [#78037278]
Remove `method_name` from `SerializerMethodField`

See https://github.com/tomchristie/django-rest-framework/blob/version-3.0/docs/topics/3.0-announcement.md#optional-argument-to-serializermethodfield
Use `.query_params` rather than `.QUERY_PARAMS`

See
https://github.com/tomchristie/django-rest-framework/blob/version-3.0/docs/topics/3.0-announcement.md#the-data-and-query_params-properties
Replace `lookup_field` with `extra_kwargs`

In `HyperlinkedModelSerializer` for location.

See https://github.com/tomchristie/django-rest-framework/blob/version-3.0/docs/topics/3.0-announcement.md#changes-to-hyperlinkedmodelserializer
Point requirements.txt at a specific commit.