This depends on what is meant by full featured. As other people have discussed it's unreasonable to hope that a protocol like this could ever do all the fancy things that many programs have in their native interfaces. But if we're talking about a more limited interpretation of "full featured", and there seems to be some consensus about this, it's a worthwhile goal. Well, my point is that this needs some clarification.
Yes, we can always come up with new fancy features. In a very general way I personally consider "full featured" to be those features that "most good" programs would have in common. Being able to set the hash table size is NOT something I would consider part of this, as an example. Taking back moves, and setting up new positions would definitely be some of these features as well as setting the playing level or the ruleset to be played by. I would suggest not getting real fancy but sticking with the basics. The interface itself can get quite elaborate without that much coopoeration from the engine or protocol.
Scoring in the arbiter is not critical.
And this is an example of this. Scoring in the arbiter is not a GTP protocol issue. The decision to make an arbiter program actually do scoring is up to the arbiter software designer. (Someone is bound to suggest that a 3rd program could be the arbiter. Yes this could be done with GTP.)
Don