declare data attr in MockSocket

setting attrs not declared at the class level will be illegal in pyzmq ≥ 3
bump minimum pyzmq version to 2.1.11

and remove the associated workarounds for old pyzmq
fix callback testing for pyzmq version_info
remove MockSocket in test_session

subclassing zmq.Socket doesn't behave well on Python 3,
and there's no point anyway.
Merge pull request #2852 from minrk/pyzmq_compat

future pyzmq compatibility

update base pyzmq version to 2.1.11

removes MockSocket to avoid compatibility issues with various versions of Python+PyZMQ in test_session.