move buffer update and process methods to buffer classes