I have to say I agree, because at present, anyone who wants to use different modes for the services clients have to edit the source for the protocol module, which as we all know, loses you official support.
So to make it possible to change the modes without losing support it would be much better to have the mode configuration in the config file instead of protocol modules.