feature/IN-630: Updates to oauth provider codebase

The updates have been done for the following 2 reasons:
1. Include the option of skipping the consent screen: For a particluar tenant, the user consent screen has been designed to be optional. This helps in cases like the  Rails tenant where an explicit tenant is not really required. Hence, this parameter has been implemented as a client level parameter which can be skipped if the flag is set to "true"
2. Refresh token timeout reset: To implement session expiry, if the refresh token is not yet expired, then the timeout is refreshed to its original value to keep the session alive and expire only on idle timeout.