Fixes for the SAML metadata generation

- Fixes issue when there was only one key both for signing and
  encryption
- Fixes issue when ServiceName and/or ServiceDescription were not
  defined
- Fixes issue when requestedAttributes were not defined