Initial tests and implementations for Exceptions

- raising Unauthorized on 401
- raising NotFound on 404
Raise errors on 4xx-class responses

After a lot of thought and a little bit of talking with some of the Orchestrate
people on the community chat, I think that raising an exception on
a non-success response is the Right Thing to do.

I'm separating out the exceptions into subclasses of RequestError (this commit)
and ServiceError (not created yet), under the notion that a RequestError is
under your control, but a ServiceError is not.

This will (erroneously) raise a RequestError on a 5xx-class response, but I'll
fix that next time.
Create Error classes for 500-class errors.
Better responses for generic errors
Implement API's Ping method

Closes #19
Implement API's Refs List

Closes #23.
Remove custom logger

Closes #13, albeit heavy-handedly.

Farday includes a logger middleware.  An example of how to use it is in
test/test_helper.rb
First handling of Time objects for timestamps
get_event also handles date types
extract time conversion to helper
handle Time/Date for all Event queries
convert Date -> Time first
document timestamp usage for list_events
Merge branches 'mattly/19-api-ping', 'mattly/23-api-list-refs', 'mattly/24-raise-exceptions' and 'mattly/30-timestamps' into working-0.6
Merge branch 'mattly/13-dont-assume-request-logger' into working-0.6

Conflicts:
	lib/orchestrate/client.rb