Well you can go for any CMS you are comfortable with. I, personally would go for WordPress.
As for the e-commerce solution, there are various plugins available for wordpress which enable a shopping cart.
Finally, for the "Online Personal Training section", just do some research about sites like Nettuts or Chris Spooner’s blog. They have premium sections on their site which are only accessible after the reader has paid for the member ship. http://www.blog.spoongraphics.co.uk/access-all-areas
This process is quite similar to the one you require. Although, I would love to hear some more suggestions on this particular issue regarding the "Online Personal Training section".