Extract Protocol out of Messenger so latter can be reused

Each Protocol is either Traditional or Docker but there is now only one Diego::Messenger which can operate with either

[#75217152]