change bento.box api to use events rather than attach functions to Box object