Validate that DiscoHints elements only appears on IdP

Fix a bug parsing the location data from the XML.

Validate the XML and raise an error when a DiscoHint element appears in a SP.

When serializating to XML, add only the location data to IdP.