By making the WifiClient protected it would be possible to make a class that inherits WifiIPStack and only talks over TLS by calling the clients sslConnect functions. For consistency the client objects in the IPStack and EtherenetStack objects should probably be made protected.
https://github.com/energia/Energia/blob/024a8fe8728a6e5af4e57832e36c0be43716f841/libraries/MQTTClient/WifiIPStack.h#L71
By making the WifiClient protected it would be possible to make a class that inherits WifiIPStack and only talks over TLS by calling the clients sslConnect functions. For consistency the client objects in the IPStack and EtherenetStack objects should probably be made protected.