rewrite to use keyword args, wip
finish keyword refactor
version bump