Software Renderer

'nuff said.



Adds a GUI setting called "Software Rendering" to the graphics menu. It works, but I'm not sure if there is anything specifically that I should've done (for example the option should be hidden when emulation is running, but then again I wasn't sure if any of the other code was doing this so I just didn't bother). Cf. 6cd1091 if you want to check.

Should compile and run on OSX, Windows and Linux. Only the latter two are tested, however. Care was taken to make sure that each commit in this branch compiles so that bisecting can be done efficiently.