VideoCommon: normalize lighting direction.

It seems that the lighting direction must be normalized. This fixes lots of lighting issues mostly shown in the d3d backend.
Move FPSCounter calls to RenderBase.
FPSCounter: Flush the logs every second and close them when the renderer is shut down.
Turn the FPSCounter namespace into a class.
Gcifolder use correct region for fifologs and homebrew
Emulate GameCube memory card speeds
Redo timing in DMAWrite/DMARead
Jit64: implement frsp
Core: Fix warnings in JitRegCache
FPSCounter: Remove redundant destructor.
Merge pull request #595 from Armada651/pref_log

FPSCounter: Flush the logs every second and close them when the renderer is shut down.
Support Sampler binding in the shader.

In the cases where we support the binding layout keyword, use it for more than binding UBO location.
This changes it so it is supported for samplers as well.

Instances when this is enabled is if a device supports GL_ARB_shading_language_420pack, or if it supports GLES 3.10.
Merge pull request #471 from Sonicadvance1/sampler_binding

Support Sampler binding in the shader.
Revised channel access from EXI_DeviceMemoryCard
DolphinWX: Implement scrolling in the memory views
GCI Folder: no need to force reload sysmenu to get version

causes crash with larger gci folders as we pull the loader out from under the ppc
Merge pull request #651 from LPFaint99/memcard

GCI Folder: no need to force reload sysmenu to get region
GCPadEmu: stop sticks wrapping at extreme values
Don't create a Panel for a seperate render window.

Instead of setting RenderParent to null and raising complexity RenderFrame can be its own parent.
Merge pull request #652 from booto/controller_stick_wrap_fix

GCPadEmu: stop sticks wrapping at extreme values