Allow custom uri schemes

As per [#154](https://github.com/evonove/django-oauth-toolkit/issues/154).
Yeah, `urlparse` is what I used in my implementation (https://github.com/Locu/djoauth2/blob/9df7c3661e0a4c3585d3a333a63d5ed74472083c/djoauth2/authorization.py#L185):

```python
if urlparse(redirect_uri).fragment:
  raise InvalidRequest('"redirect_uri" must not contain a fragment')
```
I'll take a look at this later today / tomorrow when I have the time.