Still improperly handling token_refresh, but methodize some things in the meantime

* Methodize error handling
* Limit the scope of some of the methods (like `upload()`)