fix for #12641

dont set __salt__ to self, since lazyloader isn't necessarily execution modules
Cache the sreq inside the zmqchannel instead of caching the entire channel object.

This is an improvement over #10332 in that you don't have to worry about someone creating a ZeroMQChannel then forking (thereby breaking the thread-pid rules). This way once it moves it will create a new sreq as needed.