acme/challenge_request handles only 1 domain name

No other functions inside acme/ handle lists, so
to keep the class consistent, challenge_request()
should only handle a string parameter. Iteration
should be moved to the client, which is handling 
the list of domain names anyway.
Ah `TypeError` thanks for the instruction :)

It's less about testing the interpreter and more about making the test *be* the documentation.
I like a test to fail if the function declaration changes from `def foo(bar)` to `def foo(bar="default")`, rather than relying on a docblock.

It's only a style thing so I'm happy to drop it.