Make canvas handle retina devices

Scale the canvas by a ratio if needed. Move checks of sprite dimensions
to the sprite itself as the texture size may differ.