Refactor MethodCall so child classes do not need to call checkArguments