Titans, Roos agree to $43 million deal