Make vertex loader testable

This branch contains some core refactorings and global dependencies removal to make VertexLoader testable. A sample unit test has been included, and while it does not test much (a simple position conversion test) it works fine, even testing JIT :)
This is not about any kind of hypothetical libdolphin, this is about being
able to link Core or VideoCommon to standalone binaries like tests. As long
as you manage to make VertexLoaderTest link, I couldn't care less about how
you implement it.

And no, I'm not going to take responsibility for bugs that impact literally
nobody and block cleanup, refactoring and improvement efforts.
On Aug 4, 2014 9:07 AM, "Tony Wasserka" <notifications@github.com> wrote:

> In Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp:
>
> > @@ -57,16 +53,10 @@ void ControllerInterface::Initialize()
> >  	ciface::XInput::Init(m_devices);
> >  #endif
> >  #ifdef CIFACE_USE_XLIB
> > -#if USE_EGL
>
> This is ridiculous. It's your PR so you should take responsibility for all
> consequences. You're removing support for a feature without any sort of
> discussion but with the sole reason "it's poorly designed", referring to a
> nonexisting libdolphin which doesn't play a role currently and probably
> won't in the near future either.
>
> I'm going to do the single right thing and neither condone nor revert this
> PR, but provide a fixup patch myself later, because admittedly I should've
> taken the time to review this PR earlier.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/dolphin-emu/dolphin/pull/716/files#r15763567>.
>