Support hashie 3.2 and other changes

Hashie 3.2 requires use of the IndifferentAccess extension in order to let the Avalara Hash serialize properly into the response objects. Without this, you end up with empty Avalara::Response::Invoice objects.

Further changes:

1) Bind the *.gemspec to versions of runtime gems. Used the existing httparty and multi_json versions, but upgraded hashie.
2) Recorded VCR casette for geographical_tax and changed test. Like the Death Star, this method seems to be fully operational and no longer throws a non implemented error.
3) Changed ApiError to extend from a PayloadError that has a dedicated payload field. The use of StandardError#message was a bit weird and tests were failing from a returned string rather than the underlying payload. Per the ruby docs, message invokes to_s so not sure why would expect an object back (http://www.ruby-doc.org/core-1.9.3/Exception.html).
4) Added the development endpoint in the example YML for tests. The endpoint default is production and creates a bit of confusion when the tests all fail since they were recorded against development.
5) Added pry to help debug 1 - 4.