Replay multi-character maps by introducing a buffer delay

Also save and replay characters that would otherwise be "lost".

@kris89 this seems to work for me to permit multi-character mappings (like `dw`) to be replayed in multi-cursor mode although it does introduce a little bit of lag. The lag caused a lot more keys to be dropped, so I adapted and simplified @joeytwiddle's fix for that.

I thought about making the `100m` time configurable, but I couldn't figure out how since it isn't really an integer or a string; I don't fully understand how vim's type system works with `sleep`.

This is my first non-trivial vimscript work so please be patient if I've done something stupid :)