Some changes I made to support the app I needed to make

Hi Daniel,

A few months ago I needed to integrate with Desk and came across your code. I forked it to add some features I needed along with supporting tests. This is my first pull request to an open-source project, so I apologize in advance if I missed some protocols. I'm not sure if I went way off the track that you had envisioned for this repo. If that's the case, please let me know and I'll keep the changes on my branch and give proper credit back to your project.

Some of the features I added:

- Basic Authentication option.
- Classes necessary to interact with a `Company` entity.
- Supporting unit tests.