Url encode query string for pure query

This made changes that go against comments made by this PR:
https://github.com/boto/boto/pull/1671

However, the query string must be url encoded. You must use it to make STS assume_role_request_with_saml anonymously because the saml_response must be sent over url encoded.

cc @danielgtaylor @jamesls