CSprite and benchmarking changes

I was testing some stuff for water, and got tired of having to change the sprite name in two places, so I added two new constructors to CSprite, one where you only write the name once, and then include a Dictionary containing a CTextureAtlas with the same name. The other constructor assumes that the sprite exists in Graphics.CTextures.texture, as most do at this point. I also moved the flip parameters further forward on that one, since they change more often that shader.

I made some changes and additions to the benchmarking too, so now we can get an idea of how long the drawing takes, how long the update takes, and the respective framerates.

I was doing this while on a plane, and had my laptop in "low power mode", and something interesting happened. My laptop locks the vsync to 30FPS in low power, and thus the game also ran in 30 FPS. So I still think we need to implement a IsFixedTimeStep replacement soon.

I'm still working on the water, not much of that is included so far in this pull request.
I just figured Id push this out now so others can use the new CSprite constructors.