Allow customization of algorithms and elements to sign

Allow setting different algorithms for DigestMethod and Canonicalization, as well as defining a list of elements to sign. Defaults to only sign Body and Timestamp.