Starting Small, Pushing Arguments Out, Pushing Return Values