the start of the API changes
adds update method