Intelligent content unloading

In this commit I added intelligent content unloading, so when adding new
content loader, you can specify its TTL (time to live), and it will
unload assets in that content loader if they are not reused in that
specified time period. Also fixed many minor bugs, but there is still
many troubles with camera (mainly getting correct position and camera
bounds for collisions). Also added drawing for text to spritebatch.