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.
VideoCommon: loop bug in ShaderGenCommon.h debug
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.
CheatSearchTab: Make cheat list display in monospace font
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.
Added Load/Save function for the Watch window.
Made the floating windows toolbars dockable.
Scaled down the breakpoint toolbar icons to 16x16.
Breakpoints and watches are now loaded and saved on start/stop.
Saved Breakpoints and watches per game in the game ini.
Removed the EXRAM_MASK from the safe address check as it was causing invalid accesses on Wii games in DEBUGFAST builds
Added a new option to add memchecks from the Watch window.
Fixed watch labels from being truncated at the first whitespace.