more changes to the api based on feedback