no more std string, remove unused includes in various spots as well
more unused includes
route all keyboard handlings through qml now

and let the client decide what to do.

this means that when the chat is focused, keys don't still get received
and acted on when you're typing in chat. no visible regressions.