Rework API

Per previous discussion, we've:

- Split sailthru.rb into several files, but the bulk of the client API remains in a single file
- Lightened up the dependencies as much as possible and switched from shoulda to minitest
- Renamed Sailthru::SailthruClient to Sailthru::Client and similar renaming for custom exceptions