Interesting topic... I always catch and release personally. That said, I definately think that keeping a couple of fish is not a problem. As said in the previous post, there is a definite overpopulation in the mountain streams. Anyone who has fished the Smokies for many years can tell you that the fish are larger after flood years. Why? because the floods cause lower survival among the young fish, allowing the other fish to grow larger.
Something that bothers me is the people that release but don't respect the fish. I was fishing this last spring for Apache trout in a mountain lake in Arizona. Several people were there catching a lot of fish. One guy was catching a lot, but when he would "release" the fish, he threw them back, literally. Soon there were the tell-tale floaters around where the guy was fishing. I was fishing with a kid and carefully used it as a lesson to show him why we are gentle with the fish we release. After that, he was very careful how he let the fish go. If we are going to release, we need to be careful to not kill the fish playing it. Now if we could just get everyone being as careful