Move all code to a common library and introduce an OpenGL interface that allows rebinding. This should make testing easier and reduce compilation times.

Signed-off-by: Kristian Duske <kristian.duske@gmail.com>
Fix up tests for new project structure.

Signed-off-by: Kristian Duske <kristian.duske@gmail.com>
Additional Functor templates for __stdcall function pointers.

Signed-off-by: Kristian Duske <kristian.duske@gmail.com>
Fixed some compiler warnings and errors, better support for GNU compilers.

Signed-off-by: Kristian Duske <kristian.duske@gmail.com>