hello, world.
Bring up graphics & allow game to exit.
Adds sprite, returns Err(`not implemented`) message upon creation
Load sprite at origin (32x32)
Use sprite's source-rect

Use's sprites source rectangle for tilesize.
Flips buffer every frame
Packaging things ...
Added Animatable trait.

Animooted sprites will have their own render pipeline which
will step their time according to world time (SDL_get_ticks) befor
they are asked to draw their frames
Impl `Drop` trait to automatically call `SDL_quit` when the game
goes out of scope. (When main returns.)
Doc update
Move input handling to separate structure
Cleanup input testers

Uses cleaner pattern matching syntax
Returns a copy (bool) instead of *(&bool), should be
cheap enough.
DOc update
Added player class & use it instead of raw sprite
Impl. walking physicsA
Clear back-buffer before we draw sprites onto it.
Move graphics constructor to more traditional `new()` method
Load bitmap from cache or fetch it from disk if it does not exist.
Trying to make `graphics` responsible for all SDL surfaces.

Not working very well.
IT WORKS!

In the end I wrapped the map's key in `Handle{}` which
I'd rather keep private but that's not how rust's visibility works.

Sprite's then grab a handle and use it to request that the
rendering engine display a cached sprite.

The idea is that if you have a `Handle` then graphics has
already loaded the requested sprite.

If you construct a `Handle` w/ an invalid ID then the renderer
will panic() as it retrieves a non-existent key.
Mark `id` as private.

This should prevent me from inadvertendly creating a handle which
is not present in `sprite_cache`