I'm really in favor of keeping them separate. My experience with "one size fits all" approaches to any sort of design (not just software) is you end up with a product that's mediocre at many things and excellent at none. Another bonus of taking the mindset of multiple applications, each with its own focus, is the user can pick what they need a la carte to customize their suite of tools and doesn't end up paying for functions they neither need nor want.
Bookmarks