Don't truncate spline/bezier through mode

Don't truncate the through mode bit in the vertex type during
normalization. Normalization is used to convert different vertex types
to a singular normalized one but the through-mode bit should be preserved.

This only affects (fixes) spline and bezier draw commands. The only thing
that was broken was games that drew splines/beziers with through-mode and
have matricies that differ significantly from the identity (didn't load
identity before drawing).

This should not break anything and fix #5087 .
Fixed cwcheat 0x0 >  0x80000000 bug

Thanks @Kingcom
Merge pull request #5144 from sum2012/cw-cheat2

Fixed cwcheat 0x0 >  0x80000000 bug
Merge pull request #5141 from Bigpet/BezierThrough

Don't truncate spline/bezier through mode
windows: Move rawinput stuff into its own file.
windows: Clean up rawinput code a bit.
windows: Stub out HID rawinput.
Eat some cycles in the Dcache invalidate funcs.
Eat some cycles in suspend/resume interrupt funcs.

These are really common, hope this doesn't have ill effects...
Eat some cycles when working with event flags.
Eat cycles when messing with the dispatch thread.
Eat a few cycles when checking callbacks.

Some games really spam this function.
Eat some cycles when reading the button data.
Eat cycles when enqueuing GE lists.
Eat some cycles when getting the current thread id.
Merge pull request #5146 from unknownbrackets/rawinput

Separate out rawinput handling
Eat some cycles when flipping the framebuffer.
Merge pull request #5147 from unknownbrackets/perf

Eat some cycles in a few minor places
windows: Skip gamepad HIDs, don't work everywhere.
windows: Check PSP_IsInited() in more places.

This prevents showing buttons as clickable, etc. in the debugger mainly.