* refactor: Pull out common functionality of some tests
Mainly just in the destroy tests, condensing them to use the same functions where available. Some more reductions could be done, but I think this is a good balance between reducing repetition while keeping most functions readable and easy to understand.
* fix colliding test fail in credlib vault base
* add username password resource
* fix a few bugs in the tf code as well as complete tests with copied crypto code
* address PR comments
* clean up all of the hmac testing code
* remove plan only in test and fix some descriptions per PR