Article argues that git is intrinsically confusing--if you could redesign git from scratch, what would you change? ( dl.acm.org )