The Cubs and Geovany Soto have avoided arbitration by agreeing to a one-year, $3 million contract. Soto, a catcher, is a former NL Rookie of the Year. He made $575,000 last year and hit .280 with an .890 OPS in 105 games.