add verbose comments explaining steps (issue #84); rename `_handshake` method to `_pair`