Rewrote DirectInputEmulator

Replaced the Send___ methods with a number of methods which generate
INPUT[] objects and a SendInput method which transmits them. This allows
us to more flexibly support combinational keypress emulation (including
pressing keyboard and mouse buttons simultaneously).
Refactor CommandChunks\* and CommandPool

Updated to make use of new DirectInputEmulator API
Add common US keyboard layout keycodes
Switch to using Shift+F_ for team selection
Merge pull request #49 from Mpstark/feature/directinput

New DirectInputEmulator