Add support for SingleSignOnService/prepare_for_authentication with HTTP-POST binding

Warning, this changes the return type of `prepare_for_authentication` by including the chosen binding, and opens the door for supporting other SingleSignOnService bindings. If we want to maintain backwards compatibility though we could make a different function.