allow multiple enter & exit callbacks
add tests for multiple enter/exit events