Rework API

Renames API classes, moves into separate files and reworks exceptions to be normal errors.

Waiting on Sailthru/sailthru-ruby-client#45
should rake be in the gemspec instead?