Open URIs with query strings.

`Roo::GenericSpreadsheet#file_type_check` now strips the query string from URI
resources before checking the extension.

A couple of questions regarding commits in this PR

1.  I reapplied an earlier commit to add shoulda to the gemspec.  It looks like
    shoulda was erroneously dropped the last time the gemspec was regenerated.
    The commit I reapplied adds them directly to the gemspec.  Is this the right approach?

2.  I added webmock because it makes testing this feature considerably easier.
    This does conflict with the existing pattern of checking against an `ONLINE`
    constant, but using webmock seems like a much better approach.  Any thoughts?