ACCUMULO-2464 Reflect around CredentialProvider* to pull sensitive configuration values not from plaintext-sources

The CredentialProvider classes are a new introduction in 2.6.0 designed to provide a common
interface, via Hadoop Common, that downstream processes can leverage which are "more secure"
than storing them in a plaintext-readable Configuration file (like the common practice of
Hadoop Configuration "site" XML files).

CredentialProviderFactoryShim uses reflection to:

1) Find if these new classes are available
2) Instantiate them, and the Methods we need to invoke
3) And, invoke them with the given information

This provides us with a backwards and forwards compatibile class that allows early
adopters to use 2.6.0 features, and, when >=2.6.0 is the "norm", allow users to continue
to use <2.6.0 transparently.