For every peer expose through `getpeerinfo` RPC whether or not we selected them as HB peers, and whether or not they selected us as HB peers.

Suggestion by @gmaxwell.
if (pfrom.nVersion != 0)
        {
            Misbehaving(pfrom.GetId(), 1, "redundant version message");
            return;
        }
        int64_t nTime;
        CAddress addrMe;
        CAddress addrFrom;
        uint64_t nNonce = 1;
        uint64_t nServiceInt;
        ServiceFlags nServices;
        int nVersion;
        std::string cleanSubVer;
        int nStartingHeight = -1;
        bool fRelay = true;
        vRecv >> nVersion >> nServiceInt >> nTime >> addrMe;
        nServices = ServiceFlags(nServiceInt);
        if (!pfrom.IsInboundConn())
        {
            m_connman.SetServices(pfrom.addr, nServices);
        }
        if (pfrom.ExpectServicesFromConn() && !HasAllDesirableServiceFlags(nServices))
        {
            LogPrint(BCLog::NET, "peer=%d does not offer the expected services (%08x offered, %08x expected); disconnecting\n", pfrom.GetId(), nServices, GetDesirableServiceFlags(nServices));
            pfrom.fDisconnect = true;
            return;
        }
        if (nVersion < MIN_PEER_PROTO_VERSION) {
            
            LogPrint(BCLog::NET, "peer=%d using obsolete version %i; disconnecting\n", pfrom.GetId(), nVersion);