@jcredding change to a non-DSL polymorphic signature based approach (with optional trailing hash) like we discussed.