Fix typo
Add OAuth2Ex.ensure_token to ensure the token is not expired
Auto refresh expired token when using OAuth2Ex.Client module
Make Client module methods overridable
Fix typo in option name
Refactor Client module to simplify usage
Update readme and fix typo
Add cache for token instead of reading from file every time