Make it work!

Summary of changes:

* Use relative urls for client options
* Remove request_phase override
* Remove access_token_options
* Instead of calling client.auth_code.get_token, perform the request manually otherwise Square's ISO8601 expires_at will be interpreted as 2014 when #to_i is called.
* Meet the OmniAuth schema spec for auth_hash info (https://github.com/intridea/omniauth/wiki/Auth-Hash-Schema)
* Include raw_info in extras
* Added some specs

HEADS UP: Square doesn't use refresh tokens, so you'll encounter errors if your token expires. I'm not exactly sure how to handle this within omniauth. See https://connect.squareup.com/docs/api#post-renew