Handle multiple qop types

In Digest Access Authentication there are two possible values (four if you count the not-present and both cases) for authentication. We were narrowly handling one of the four cases. Now we handle two.

Fixes #1601.

As for logic: I reordered the branches because if `qop is None` then we can not call `split` on it. So if we handle that case first, we shouldn't hit any exceptions. :)

I think I'll also be sending a PR to handle the `auth-int` `qop` value for DigestAuth. Is there a reason we never did do it?