glscale: Refactor and simplify GL code.

Eliminate redundant call to glDrawBuffers() and fix ordering of
framebuffer setup.
glscale: Rework how scale factors are calculated.

Go back to the previous method of using "next integer scale size" for
the intermediate buffer size, rather than 2x screen size. Set the
limit to 480x360 (150%) below which we use GL_LINEAR, and check
GL_MAX_TEXTURE_SIZE when calculating the scale factor.