This is a basic example of a remappable command specific to a single
Component. It could be remapped like so:
```toml
[keys.buffer-picker]
C-d = "close_buffer_in_buffer_picker"
```
This has some rough edges:
* Can we namespace the commands so they don't all have to be very long
and specific about which component they work for?
* How can we make this work for generics?
* We can't define commands that operate on a `Picker<_>` for
example. This example only works because we're using a
`Picker<BufferMeta>`.
* For Pickers and Menus we could use a `Vec<Box<dyn Item>>` and drop
the generics but that would lose static dispatch.
* Could we separate the part that needs generics into a different
struct and have the functions operate on that?