signed requests

This is the same as PR #127 but with merge conflicts resolved. Verified that `rake test` passes all tests. @d3mcfadden, @sebastienluquet fyi.
please consider about using Ruby URI lib to build these