Add arg helper unit test. Compare the results of self.Arg with the request.params accessors to ensure they behave the same way.
Overload the Arg and MaybeArg helpers to allow accessing arguments by name as well.
Also update the docs to document Arg and MaybeArg separately
Use the new key-based Arg helper in a few locations to show how it is used.
This is a backport of core#29277
Depends on D17946