Putting aside the kind of silly hypothetical exercise of trying to figure out which 20% of features to develop, the rest of this I feel is spot on. As a developer, so often I either come into applications with redundancy or get directed to build redundant features in. Often the person who makes that decision has no real basis, they just want to make sure people can use feature X, so it seems like putting in 3 different ways to do X makes sure everyone will use it. In reality, you are just adding overhead for your team and confusion for your users.