Fix fast typing bug

This fixes a bug in our autocompleting textareas where fast typing will cause the cursor to jump to the end of the textarea. I boiled down the conditions that cause this bug to [this](https://github.com/zachallaun/weird-textarea/blob/master/src/weird_textarea/core.cljs).

The problem occurs when a controlled input's value is a part of the local state of a containing component, and then the inner component has a re-render forced before it can signal to that containing component to update its state. (That didn't sound great– I'm having trouble describing this… and it's taken me the last 3 hours to figure out.)

Anyways, this "fix" is actually a bit of a hack– we just force the outer component to update first. However, this is at the cost of causing an additional and unnecessary re-render every keypress. I think this is a reasonable trade-off for now. We might want to open an issue as a reminder to address this in the future.