TINYGL: glBlendFunc Implementation

This PR expands the functionality of TinyGL by adding support to glBlendFunc.
This function enables the user to implement effects such as alpha blending.
The grim engine was also updated to support the feature (and also to support sprite colorization for partial dimming of sprites)
Have you looked at the assembly to verify that the compiler ACTUALLY obeys it? Compilers are interesting beasts when it comes to lying.