Update per breaking stdlib changes

Signed-off-by: Sebastian <sebastian@sebsite.pw>
Use done type and for-each iterator loops

Signed-off-by: Sebastian <sebastian@sebsite.pw>
implement numeric prefixes

extensible enough to be able to handle custom repetition handling
don't explode on f3

still not parsed, but at least it doesn't cause made::line() to return
an error
make hash table growth a more aggressive
fix leak in example
vi: add dd

pretty cute solution imo
more vi mode stuff
move default config into a separate file
separate words with '-' in actions

also add a lil bit more to vi mode
first stab at a vi mode

needs a lot more work, but at least it's something
pass full made::state to prompter

so that it can eg. do stuff with the mode
recognize esc

it's Fine i promise
bit of work towards a vi mode

need to do some embeddability work first, in order to be able to bind
add configurable bindings
update for new label syntax
fix enter in hist tok mode
fix a double-free

add token history mode

also includes a new set_mode which i couldn't be bothered to factor out
into a separate commit but which is used to make sure that the hint is
always appended when leaving token history mode

one known issue is that escaping the token doesn't do exactly what we
want: "hello world" will correctly turn into hello\ world, but $foo
turns into \$foo. it would be nice if the splitter had an option to not
unescape the token

Co-authored-by: Max Schillinger <max@mxsr.de>
escape: always return escaped string