Fix timing of AVI files dumped on Linux

The timing information is set on s_scaled_frame->pts, giving precise
timing information to the encoder. Frames arriving too early (less than
one tick after the previous frame) are droped. The setting of packet's
timestamps and flags is done after the call to avcodec_encode_video2()
as this function resets these fields according to its documentation.
Fixes ARM CPU detection routine for the hardware.
We weren't dropping a newline character from the string, we were cutting off the last character of the hardware name.
This fixes my TK1 being called 'lagun' when it's name is 'laguna'
Add BitSet and, as a test, convert some JitRegCache stuff to it.

This is a higher level, more concise wrapper for bitsets which supports
efficiently counting and iterating over set bits.  It's similar to
std::bitset, but the latter does not support efficient iteration (and at
least in libc++, the count algorithm is subpar, not that it really
matters).  The converted uses include both bitsets and, notably,
considerably less efficient regular arrays (for in/out registers in
PPCAnalyst).

Unfortunately, this may slightly pessimize unoptimized builds.
Convert registersInUse to BitSet.
Add workaround for OS X symbol clash and AllOnes helper method.
Convert some VideoCommon stuff to BitSet.

Now with a minor performance improvement removed for no reason.
Add unit test.
Fix acceleration emulation for wiimote and nunchuk.

The 1-2 least significant bits were missing.
Fixes minor bug in the ARMv7 register cache.

Makes sure our register we are binding doesn't get unloaded immediately.
Fixes some overzealous optimizations from ARMv7 BindToRegister.

We can't do it in rlw and friends.
subfx had an inccorect check.
Minor whitespace and reordering.
Fixes a potential crash on the ARMv7 JIT if someone disables the entire JIT in the debugger.
We can't disable branches in the JITs. Make sure they don't become disabled if someone tries to disable the full JIT.
CheatSearchTab: Make cheat list display in monospace font
DolphinQt: Make GetOS const
Added a "Step Out" (aka "Step return") function to the debugger.

Conflicts:
	Source/Core/DolphinWX/Debugger/CodeWindow.h
Made the "continue", "stepover" and "stepout" functions work when the PC is at a breakpoint
Changed the step over routine to a single stepping version that steps until a blr is encountered.
Cleared out all temporary breakpoints on each step to prevent phantom breakpoints from stopping the debugger.
Added a RAM Watch window to the debugger

Conflicts:
	Source/Core/Core/HW/Memmap.cpp
	Source/Core/Core/HW/Memmap.h
	Source/Core/DolphinWX/Debugger/CodeWindow.h
Added "Add to watch" context menu items to the Memory and Register windows.
Added "View memory" context menu item to the Register window.
Disable block linking while debugger stepping or if there are breakpoints
Added a "Delete watch" context menu to the Watch window.
Added a "View memory" command to the context menu.