Changes from Baobab Development

There are a few new features and bug fixes in this branch, including:
- the Inbox App ID is exposed in addition to the BaseURL
- updated attachments logic: attachment JSON is now returned in the request for messages, so attachmentIDs -> attachmentData (similar to tagData on threads)
- tag interactions are now supported on threads
- you can fetch the drafts of a thread in addition of the messages of a thread
- preliminary support for downloading attachments (via https://github.com/eligrey/FileSaver.js/, not included)
We might need more changes then.

The way the API was documented previously, it was expecting formdata with the field 'file', so that field was always used when uploading, and the exposed api would only allow uploading a single file.

Supporting multiple file uploads in a single call complicates that a little bit (previously, we were expecting we either had a File object, which is a Blob with mimetype and filename metadata, or a filename and a Blob of data --- this is a lot harder to do when there are multiple things in the set).

However, from the looks of things, that API request is still only ever uploading a single file, it's just that the assumpion is the response is an array (which it may be now).