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)
This looks VERY much like the results of running an automated formatting tool without applying some human judgement afterwards. We do not have a _strict_ 80 character limit, and if you're going to break lines, don't do it on only 3 characters.