Fixing a couple of issues with early callbacks not returning to prevent continued execution
Added tests