Add kwswitch alternative to switch

This implements a `named_args`-based alternative to `switch` as motivated in #126.