much saner python bindings