Decomposing Composite Changes for Code Review and Regression Test Selection in Evolving Software