Add models and API client

Still need to add the capacity to provide authentication but wanted to make sure this stuff was in the right ballpark to begin with.
Is this meant to be the default client we can use? Does it need to implement `S3Client`?