There should definitely be a max salary for rookies and first contracts... I think the NBA system is great for that.
The Strautsberg saga is rediculous. A 50MM bonus for a kid that has yet to even throw a minor league pitch is a joke.
The salary cap would be great for the fans, but bad for baseball revenues - I can't see it happening. The industry of 300 dollar tickets, huge stadiums, lux boxes has made it economically impossible to start capping players to enrich owners.