Get correct range for argument lists with both normal and kwargs.
kwargs are always last, so the range end should always be calculated
from the end of the **kwargs declaration if present.
In case there was at least one normal argument, but no *args,
end was wrongly overridden by a later if statement and set to the
end of the last normal argument. This caused the **kwargs declaration
to be outside the calculated argument context, which broke
addArgumentTypeHints() for these arguments.
Unrelated, the start of these ranges was two columns early.
The start is calculated from the end of the function name, not the
start of the first argument, so add 1 rather than subtract.