What actually is the point of the major league contract? The sense I have is that the option years start to run right away, so he has to be on the major league roster by year four or he's (possibly) gone. Or is the issue something else altogether?
A major league contract means the player is added to the 40-man roster, and his option years begin right away.
Take Moskos for example. If he was given a major league contract, his option years would be:
2007: Option #1
2008: Option #2
2009: Option #3
2010: Option #4 (Players with less than five years in pro ball get a fourth option year if their first three are already used)
2011: Would have to be on the 25-man roster all year
Now with the contract he received, which was a minor league contract, the Pirates don't have to add him to the 40-man roster until November 20, 2010. At that point he has three options remaining, which means the Pirates don't have to add him to the 25-man roster until 2014.
In hindsight, with Matusz, the contract didn't really matter. However, in the event that he would have struggled in his minor league career, the major league contract would have been beneficial to him, as it would have provided him with the assurance that he would either be on the major league roster, or a free agent, by the 2011/2012 off-season.