Fixed sorting of services containing non-OpenID types.
Don't check discovered claimed_id for IDENTIFIER_SELECT.

This special value is what we use in a request, not what's
discovered from an endpoint.
Return lists of human-readable errors from validators.
Return errors from discovery verification functions.
Inline _idResGetNonceOpenID1.
Move verification methods from GenericConsumer to Consumer
Raise VerificationError instead of returning FailureResponse.
Move success_query creation from Cleanup.setUp into the test where it's used.
Renamed VerificationError → AuthenticationError
Drop mock urlopen from Cleanup tests.
Use AuthenticationError for 'cancel' responses.
Use SetupNeeded exception instead of SetupNeededResponse
Remove remnants of dynamic mode dispatch.
Raise SetupNeeded in one place.
Unified Response class.

- This is the only response class, no need to have .status
- .identity() renamed to .claimed_id as the word "identity"
  actually means OP Local Identifier in OpenID parlance. It is
  claimed_id that should be used to identify users.
Refactored _complete_id_res.

- Verification logic moved into verify_response.
- Response preparation moved into complete.
Moved field validation functions into consumer.py
Replace verification error accumulator with exceptions
Check openid.identity for matching the discovered local_id, not identity()
Cleaner testing logic in _verify_openid2