Credential store

As discussed in #312 the credential store will be called when the
authentification is configured, but either username and password
references not existing environment variables or they are both empty
strings. The credential store is an XML file with source, username and
encrypted password. The password is encrypted with the .NET encryption API
on a user account API.
You're right, I never read the signature of `Array.create`. I would have used `Array.zeroCreate<byte> 8`, but your method works too.

This looks much better.