Add support for SAML 1 Tokens

This is based on #12 with these additions:

- Rebased against master
- Support `saml_version` to be number or string (`1` or `"1"`)
- Support `ID` and `AssertionID`