Improved StripeObject#to_hash

Calling `to_hash` on any `StripeObject` returns the values hash, which may have nested `StripeObjects`. To get a hash of a `StripeObject` where its nested attributes are also converted to hashes currently requires a round-trip via JSON, which is ugly:

```
customer = Stripe::Customer.all.first
JSON.parse(customer.to_json)
```

This pull request avoids the round-trip by making `to_hash` work on nested attributes as well. The only difference from the round-trip via JSON is that `to_hash` will result in symbol keys, which I believe is preferable, since `@values` has symbol keys as well.
I can’t directly link to the sentence, but from http://ruby-doc.org/core-2.1.2/Enumerable.html#method-i-inject

> If you specify a block, then for each element in enum the block is passed an accumulator value (memo) and the element. […] In either case, the result becomes the new value for memo.