Use a custom optimized version of SDL_UpperBlit()

Use own custom optimized version of SDL_UpperBlit(), as I don't need to
perform the several checks the function does, nor clip the source
rectangle to the source surface, and I only have to clip the destination
rectangle against the clip rectangle vertically in widescreen mode. This
commit gives a considerable performance boost, and there's probably
still more improvements I can make.