Adding concrete methods for adding events and cleaned up and expanded unit tests

Adding `addEvent` and `addEvents` methods into the client class, so events don't need to be nested inside the `data` array in the method call.  This should remove some confusion and make the calls more in-line with the other Keen IO clients.  This will cause a BC break and should be tagged accordingly.

Renamed `data` property to `request_body`, as `data` is too widely used and made it too difficult to determine if a user was setting the `data` property for the client, or using `data` as a collection or property in their document. (The real issue causing the BC break.)

Moved testing to extend `GuzzleTestCase`, added Mock Responses, and added test cases for most web service methods.  Including better testing on methods used to add events.

edit: Reverted my fix for #24, so we can merge that PR with out any conflicts.