Check for all required fields

Check that all required fields are supplied when the keystone connection
is created.  If they aren't then signal an error.  Tenant-id and
tenant-name aren't required for authentication, they will only be passed
if they exist.

Change-Id: I3f7d26029cf2060deee91f97a5fc2c580f70aaff