signed requests

This is the same as PR #127 but with merge conflicts resolved. Verified that `rake test` passes all tests. @d3mcfadden, @sebastienluquet fyi.
My apologies, just realized that you can do this without even using the URI lib since you're not using a base url, try using a ruby hash instead:
```ruby
>> query_hash = { 
  :SAMLRequest => 'somethingwith&', 
  :SigAlg => 'testsigalgorythm' 
}.to_query
=> "SAMLRequest=somethingwith%26&SigAlg=testsigalgorythm"
```
The SAMLRequest param is probably not the best example but I just wanted to point out that `to_query` automatically encodes the special params for you

Hope this helps!