This change makes the code slightly easier for downstream-projects to extend with more signer-types, but if functionalily equivalent to the previous code.