Make kwargs explicit in put, append
Made possible by #29951, progress towards #20903 

@jreback input needed on whether certain not-covered-in-tests cases should be considered possible.  See that both `put` and `append` still contain `**kwargs`.  In all extant tests, kwargs is always empty.  But there are remaining keywords that write_to_group (which both put and append call) accepts that are not in the put/append signatures.

So the question is: is there a reason why put/append would accept different subsets of the writing keywords?  If not, they should both have the same explicit kwargs as write_to_group.

Once this is pinned down, we can get explicit all the way up the stack to NDFrame.to_hdf