Adding provider to assertion as well as x509 cert

Adding the provider to an assertion. This allows for the assertion alone to be signed. Also moved around the key_info from the key_descriptor namespace to allow for the x509 certificate to be added to an assertion.