You probably need a different CMS systems for each situation. All must have good page structure with consistent use of h1, h2 and title tags etc. Adding and maintaining lots of content on different sites is also very important so speed and simplicity are key for that. Sometimes you will need lots of features in your site but I've found Joomla too big and slow with lots of over complicated code. Many people just use blogs to help with SEO and feeder sites etc but i'd suggest there are also lots of smaller CMS solution that are far better for SEO than the big packages because of their speed, simplicity and pure code.