fixed freeing of SDL_Surface + added various set()