Excellent deal for both sides. The Sox are on the hook for 32M guaranteed. That is less than two years of a Mark Buehrle. They have him for up to seven years when he will turn 30 years old. This means they might have him for the prime of his career. He gets more money than he would have if he rejected the deal and stuck with one year contracts until he was arb eligible.
Things that make you go "Hmmmmm:" Aaron Rowand and Kris Bryant have never been seen in the same room at the same time.