Fix issues with credentials

Using testgen we create a provider_crud object. Previoulsy this was
created using module scope, for some reason, potentially due to the
order of tests now this is causing an issue.

The code base modifies the credentials to perform the bad_password test
this test has modified provider_crud, which is module scoped. Hence,
when provider_crud test comes along, the credentials have not been
reset.

It is not prudent to rely on a provider_crud object being pristine from
test to test and hence I believe it should be a function scoped fixture
as it is not setting up providers, just passing back an object.