Pass strings by reference instead of copying them everywhere
Merge pull request #20 from MaddTheSane/BackToGabu

Minor OS X change
Merge pull request #21 from adrian17/reference-arguments

Pass strings by reference instead of copying them everywhere
Texture sizing fix

In its current state of things, Image always makes a single SDL_Texture
sized to the same size as the the source image.  This can cause a
problem when the image is larger than the largest texture supported by
the player's video card.  This change fixes things such that we take the
largest supported texture into account and slice the source image up
into pieces such that no piece is larger than the largest supported
texture, and then create multiple textures from those subimages.  Then
we add some extra processing in Image::Draw() to properly draw those
sliced-up images, taking flipping and clipping into account.
Dropping the requirement for hardware acceleration

There's no reason for us to *require* hardware acceleration if someone
has a computer that doesn't support it.  Passing in 0 for the flags to
SDL_CreateRenderer still returns a renderer with hardware acceleration
if one can be found.
Improved error reporting on startup

Added code to explain why we couldn't initialize the game on startup
instead of just saying so without explanation.