separated update and rendering responsibilities; renaming