Bunch of changes to support Syobon Action.
Fix negative surface zooming.
Implement ellipse drawing and refactor rect code.
Add workaround for FF.
Avoid noisy error logs.
Add (failing) test for gfx primitives.
Wrap gfx helpers in a $SDL_gfx object.
Cast signedness in library_SDL functions.
Add comment.
Merge pull request #1364 from int3/syobon

Bunch of SDL fixes that are needed for running Open Syobon Action.