fix pyeval calls to use keywords, not a dict