improvements to named argument handling