You make some good points. Managing the relationship and having managers use personal connections to judge who to keep, though, are some of the things that will really kill productivity if taken too far. If everyone spends time managing the relationship with their superior rather than getting work done, that's time not spent on getting the work done. It's called politics, and it's exactly the sort of thing a good evaluation system can be used to factor out. The communication that really matters is what helps the team get the work done the smoothest.
That said, the problem with employee evaluations is that most of them aren't very good. In fact, most of them range from short-sighted to downright stupid and counterproductive. Some evaluations force the evaluator to pick two or three "good" areas and two or three "needs improvement" areas for every employee out of predefined areas that may not even be that relevant to the particular job. Others rank people on a curve rather than allowing for something other than a 10%, 80%, 10% grouping. You might find, if you rate every employee on his or her own work, that you have 30% great employees, 67% good enough employees, 2% employees who need some improvement but are still assets to the company, and 1% who do absolutely nothing of value. This sort of ratio shouldn't be suspect for not fitting the curve. It should be an honor for your recruitment and training staff and process to know you beat the curve. You might find that you have 40% adequate employees, 25% that need improvement, and 35% that do more harm than good. That calls not for removing people and using the same recruitment strategy, but for changing how management finds and chooses candidates.
In any case, just assigning employees to a rank is silly. Noting for the good or the bad their communication, technical knowledge, organization skills, insightful ideas, attitude, ease of working with the team, and any random factor you notice as positive or negative at the time is more useful. Correct problems as they arise. Keep the data to spot trends and correct negative trends and reward positive ones. Then, when raises, bonuses, layoffs, or whatever decision needs to be made, use the data collected.
The hardest part of evaluating people individually and not ranking is you're probably not going to have an unlimited budget for raises and bonuses. That means each person has to get some share of what's available. This is why I really like the idea of project bonuses when they make sense in the particular workplace. Everyone on the team gets an even share of a bonus for the particular project. The projects that make more difference to the company get bigger bonuses. There is a drawback, though, in that people will try to transfer out of a team that gets projects assigned with less impact on a regular basis than some other team. OTOH, a lower base pay and more bonuses tied to the success of the project can be a great motivator and a great way to ease cash-flow restrictions on the business.