CDAP-400 Integrate AuthenticationClient with CDAP ClientConfig

Made AuthenticationClient extend Supplier<AccessToken> for integration with CDAP ClientConfig
It is not ok to just change the exception type being thrown. What if someone is catching IOException? It's a public method, you don't know how it's being used. Also throwing of `UnsupportedOperationException` is not documented, how can someone know? Maybe you should specify the method (in the parent interface) that if auth is not enabled, it will return null (hence marking the method `@Nullable`).