Drupal Installation Profiles (in Drupal 7) are pretty powerful and can do just about anything a module can do. I'm using an Installation Profile along with Features to develop my site, keeping everything in code so I don't have to version my database.
Given the power of Installation Profiles, many of the things you can do in a Features module can also be done in an Installation Profile. E.g., creating content types, configuring permissions, etc. How should you go about deciding whether something belongs in an Installation Profile or in a Features module when using a Code Driven Development workflow in Drupal?