This could probably use a better name - perhaps `get_args_and_defaults`?