This is where things get moved.  This function is highly tested.