Software GPU changes

 * Support the "multithreaded" option by doing GL operations on the GL thread (doesn't actually make it multithread internally.)
 * Removes some questionable code from the NULL and Software GPUs that probably was a holdover.
 * Mostly properly locks the display width to 480, fixes rendering artifacts in some games.

@neobrain let me know if this looks okay to you.

-[Unknown]