What's going on with `op_map`?  It looks like we build it up by search for the `key_*` variables in the source code string; then we don't need it to be an instance variable, right?

Should we instead build it when we construct the parakeet operation?