Use renderer instead of surface.

I guess the SDL2_gfx interface changed.
Add SDL2_gfx to extra libraries in cabal
Reformat, obey 80 char limit.