Add `Dual_send`

Instead of using the `SendInput` command directly each time something
needs to be sent, now uses `Dual_send` instead. This allows for DRY:er
code, and hopefully unit-testing in the future.