Background image size is no longer hard-coded.

The width and height of the background texture was hard-coded before
because we were using SOIL to generate mipmaps. SOIL makes the texture
square sized when asked to generate mipmaps. Now glGenerateMipmap is
used for generating mipmaps and we can find the actual size of the
texture, instead of hard-coding it.