client tests

Don't know if that helps, but in this case `it :: String -> IO () -> Spec` and `context :: String -> Spec -> Spec`, so `context`-`do`-blocks must contain further `it`s. https://github.com/zalora/servant/blob/93871afd53965d93920a13d1465ce6d9307f1736/servant/test/Servant/ClientSpec.hs#L65...L68 contains actually two tests in sequence. And here [https://github.com/zalora/servant/blob/93871afd53965d93920a13d1465ce6d9307f1736/servant/test/Servant/ClientSpec.hs#L80] I'm using `mapM_` inside a `Spec`-`do`-block to generate four test cases.

Does it help? What can we do to make it less confusing?