separate Python sugar methods from base libzmq API exposure

This should facilitate the CFFI backend in PR #277

closes #290