I am looking to build ~$900 PC for programming/engineering and gaming (WoW, Skyrim, Diablo, etc). I have a monitor and keyboard/mouse already, but do need an OS. I do not plan to overclock. Here is my build so far: pcpartpicker.com/p/nKJRCJ

I have a couple questions:
  1. Do I need an aftermarket CPU cooler/heatsink if I do not plan to overclock?
  2. Is Windows 7 preferable for gaming or is 8.1 viable?
  3. I am unsure about what graphics card to get, but am looking to get the most bang for buck at around the $250 price range. Any other suggestions?
  4. Is there anything in my build that I can improve upon without going out of my budget by too much? I am a little unsure about my mobo and psu choices