Add region swapOut, beforeSwapOut

fixes #1718
also: `.to.have.been.calledWith(this.view2)`