GCPad: Clean up Motor/Rumble interfaces

Remove the duplication here and just have one Rumble interface that
takes a single strength parameter.
SDL: Apply updates immediately rather than going through UpdateOutput

We're going to remove UpdateOutput as it's redundant, and horribly
complicates the code.
XInput: Apply immediately as well
ForceFeedback: Apply immediately as well
HW: Remove UpdateOutput

All of the rumble interfaces are now immediate mode.
HW: Poll system input from system timers

Rather than playing terrible hacks to determine the start of input
frames, just update system input periodically. Specifically, every
60th of a second.