System command followups

allow `@command.run!` without `:args`, same as `@command.run` (no bang)
test valid keys in `_process_options` (works by monkeypatch on `Hash` in `utils.rb`.