Move cred_provider abstract class to tempest lib

This commit migrates the cred provider abstract class into tempest lib.
This interface has been very stable and doesn't have any external
dependencies as it's just a building block for a cred provider class.
This also doesn't have any unit tests because it's just an interface
definition and doesn't actually do any work.

Change-Id: Ib5f8ef2728368c077666a3ca221cf659412e5f47
diff --git a/releasenotes/notes/add-cred-provider-abstract-class-to-lib-70ff513221f8a871.yaml b/releasenotes/notes/add-cred-provider-abstract-class-to-lib-70ff513221f8a871.yaml
new file mode 100644
index 0000000..6f7a411
--- /dev/null
+++ b/releasenotes/notes/add-cred-provider-abstract-class-to-lib-70ff513221f8a871.yaml
@@ -0,0 +1,6 @@
+---
+features:
+  - The cred_provider abstract class which serves as the basis for both
+    of tempest's cred providers, pre-provisioned credentials and dynamic
+    credentials, is now a library interface. This provides the common signature
+    required for building a credential provider.