Handle BP mask register better to avoid useless BP writes (causing flushes)

Patch from konpie: http://forums.dolphin-emulator.com/showthread.php?tid=24658
Use an unordered_set to track FIFO write adresses

Reduces CheckGatherPipe CPU consumption by 40%.
Fix the filter for some files in the Core VS project related to the JitIL. They were in the root of the project. They should actually be in their own filter named JitILCommon.
VideoCommon: fix custom textures

This fix a regression by revision 6cece6b48667

delete pointer must not do anything if pointer==NULL.
Re-plumb window handle to the dsound backend.

Reverts parts of commit 71c01d83ab614b9e0c421d03ca694713dbabff48.
Fixes issue 6800
Revert "VideoCommon: create native texture pool"

This reverts commit 6cece6b486670dd149c827053a84754c98397ccc.

In fact, there was a _huge_ speedup on lots of games (mostly on nvidia+ogl), but there are some crashes on D3D.
I have to fix this crash and then I'll commit something like this again :-)

Conflicts:
	Source/Core/VideoCommon/Src/TextureCacheBase.cpp
D3D: Reintroduce depencency on D3DX11 because it's the most straightforward way to bring back some broken features.

The Dolphin development team is incapable of providing sufficient replacement for its previous usage in Dolphin and the advantages of dropping the dependency do not justify the removal of screenshots and texture dumping.

From now on, d3dx11.h, d3dx11async.h, d3dx11core.h and d3dx11tex.h are required to be stored somewhere in the header include path. I don't know if this is the case for anyone else than me, but I can't really say that I care after having people randomly merge unfinished branches into master.
D3D: Use D3DX for texture dumping.
Revert "Be less dumb."
Revert "Actually, filename really does need to be a parameter because of some random debug thing."
Revert "fix non-HAVE_WX case"
Revert "Handle screenshot saving in RenderBase.  Removes dependency on D3DX11 for screenshots (texture dumping is still broken)."

This reverts commits 00fe5057f13bca3416b9d25a1fe9df27c514b29c, 74b5fb3ab4b066681336d1be44c7eecfcf6a4dc6, cd46138d299088631bbcbf37543584946c4b174a and 5f72542e0637799092ad1006d16ebad1961020e0 because taking screenshots in D3D still crashed for me so there was no point in the code changes (which I found ugly anyway).
D3D: Use D3DX11 for taking screenshots.
[ARM] More NEON emitters.
Changed thread barrier and event to use a lamba wait predicate instead of a functor.
[ARM] More NEON emitters.
Fixed a bug that incorrectly recognized as 'GameCube'. when you open the Korean Wii Disc, which is re-encrypted with a common-key(g_MasterKey).
Add a comment to the magic value reading location.
[ARM] Fix NEON emitter encodings.
[ARM] Don't leave my test code in the JIT core.
Disable wiimote source selection while netplay is running.
Redo 'Fixes GCC 4.9 compilation. It now supplies its own _mm_shuffle_epi8 intrinsic.' This time with support for Windows.
Disable Fastmem on JIT64IL. JIT64IL is completely incompatible with Fastmem and doesn't need it since it has its own way to speed up memory accesses. This fixes the JIT64IL core, which I totally didn't break but was blamed for.