Refactored Client to be thread-safe.

No more @@class variables. They're shared across all instances of the
Client so the client was inherently thread unsafe.

The client is now instantiated, and each instance can have it's own API
key.

Also, docs and specs updated.
Updated README, added LICENSE and CHANGELOG.
Core ext (String) snake_case and camel_case.