Upstream bound

There is a byproduct of this branch that SSL signatures were not being verified on returning messages before. The listener now calls decode() instead of deserialize() on the message. The only difference between decode and deserialize is that decode was also doing verification. This has no impact for the "none" security type.