As my professor in Business school used to always say "it depends". You want to get the highest value out of your points. In general your answer is probably SPG since the points transfer at the highest value for hotels (comparable to all other programs) or including the bonus when you transfer to AA. And if you spend over $30k/yr you'll hit SPG Gold status.
If you travel a lot internationally you might consider the Continental or BA card but you will only get the best value flying in first class.