Merge pull request #1078 from dorkster/fixes

Don't floor() values that we cast to int
Fix problems building with CodeBlocks/MinGW

- Fix searching for SDL2main
- Include cstring in MapCollision.cpp for memset()
- Include stdio.h in RenderDevice.cpp for fprintf()
Merge pull request #1080 from dorkster/windows

Fix problems building with CodeBlocks/MinGW
Move Image-specific functions from RenderDevice to Image class
Don't use "Surface" in RenderDevice function names

The following changes have been made:
Image::scaleSurface() -> Image::resize()
RenderDevice::loadGraphicSurface() -> RenderDevice::loadImage()
RenderDevice::createAlphaSurface() -> RenderDevice::createImage()
Rename Renderable's "sprite" variable to "image"
Merge pull request #1081 from dorkster/renderdevice

More RenderDevice fixes
Smoother movement around 1x1 objects/entities

When automatically maneuvering around 1x1 tiles, we were moving the
player to the outer edge of the tile instanly. This was jarring when the
size of the player's steps were smaller than that distance. This patch
makes it so that we approach that outer edge, but maintain our current
speed. The end result is much smoother movment around 1x1 objects.