use IOLock(mutex) instead of IOSimpleLock(spinlock); add kPS2C_FlushDataPort and kPS2C_SleepMS PS2Request primitives
don't send Synaptics in PS2Mouse unless verified Synaptics hardware; some cleanup
cleanup setCommandByte duplication/contention issues
use architecture/i386/pio.h for port I/O
remove use of deprecated IOSyncer; use IOCommandGate instead
cleanup //REVIEW