Add xkb rules file for benizi layouts

- includes `benizi(%variant)` after `inet(evdev)` to allow
  `benizi(%variant)` to override "internet" keys
Add `git kass` = `git kas` + `select-commit`
Add `git first-remote` = default "upstream" remote
Add `git new-commits` = find unpushed commits
Change name of `curl-api` env var in prompt
Use custom `rules` file in `keyboard`

- allows use of custom `option`s and ordering
Add `benizi:x240` keyboard option

- <kbd>PrtSc</kbd> => <kbd>Compose</kbd>
- <kbd>Shift</kbd> + <kbd>PrtSc</kbd> => <kbd>AltGr</kbd> (latch)
- <kbd>F12</kbd> => <kbd>PrtSc</kbd>
Fix syntax error in `with-external-gems`

- `break` (Ruby) is spelled `last` in Perl
Link local `.bundle` in `with-external-gems`

- respects custom `bundle install` options