Overloads general surface functions

Adds color and alpha parameters to all of them so they behave like GM and
are not effected by the set drawing color and alpha but you can instead
specify the color and alpha only if you wish. This is how the other
drawing functions were fixed, and this is best even adding colors to
functions that don't necessarily specify them because then they can be
batched with those that do, it makes it possible to easily batch them all
in a single batch, which I guess is the goal of our batching, optimizing
for stupidity. Anyway, tested on several games and works fine.

NOTE: I am also not necessarily advocating that this be merged.