Added SFML backend beginnings.

- SFML backend is grouped into graphics and audio and should work on
  Windows, OS X and Linux.
- Updated util.py to include apply() and curry() for partial function
  application.