Distributed Optimization and Statistical Learning via the Alternating Direction Method of Multipliers