Use type class (SourceSymbol) rather than scala Symbol for designations ...

...calls

This means tthat you cannot accidentally pass an invalid symbol to the interface.

We no longer need a generic ProtocolConversions esp with the newer stuff coming from @fommil