Fix bug with proto v2 get_msg_len() return too often an error!
Fix a bug where get_msg_len wasn't returning 0 with fragmented message

This was leading to a bug where pgShark core was trying to remove more
data (the real message size) from the existing buffer than what was
really provided.
Teach pgShark how to detect the backend

If the 'host' parameter is not given when creating a pgShark object,
then it will not call user specified callback unless it can identify
with no doubt who is the backend.
This is based on function get_msg_type_*. As soon as one is returning a
type and NOT the other one, then we can identify one side of the dialog
and deduce who is the backend.