Added Manager classes

(at request of andersevenrud), they basically do the same thing as
before, just things like Texture have a TextureManager class that
managers all its instances