Core: Move FPSCR exception flags to a typed enum
Replace BorderlessFullscreenEnabled by ExclusiveFullscreenEnabled.

Special handling was associated with this function, which only applies to exclusive fullscreen.
Support the borderless fullscreen option in all backends.
X64Emitter: add FMA3 support
X64Emitter: add unit test for FMA
JIT64: use FMA instructions
CPU: improve instruction table flags for RC bits
Android: Use apply() instead of commit() for SharedPreference changes.

apply() changes the in-memory instance of SharedPreferences and writes to the disk asynchronously, rather than synchronously, which commit() does. Since these are done on the UI thread, they should be asynchronous.
Proper Audio/Video Dumping
Limit Borderless Fullscreen to Windows systems.
PPCAnalyst: Remove unnecessary casts
Merge pull request #1251 from lioncash/cast

PPCAnalyst: Remove unnecessary casts
Merge pull request #1239 from FioraAeterna/updatetables

CPU: improve instruction table flags for RC bits
JitCache: Use std::array to back the arrays within it.

Cleans up some of the allocation process.
Reimplement Bounding Box calculation using the software renderer.
Fix linux build and various warnings.

Increase savestate version.
Get buildbot to compile.
Several small optimizations.
Fixed a small bug.
Fix compile errors after rebase.