code: function ZWaveDeviceConnection(ipAddressFamily, ipAddress, pskIdentity, pskPassword) {
      // verify that crypto is available; if not, return an error
      if (!CryptoUtils.verifyCrypto()) {
          console.log('CRITICAL ERROR: crypto not available.');
          return;
      }
  
      // store our connection parameters
      this.ipAddressFamily = ipAddressFamily;
      this.ipAddress = ipAddress;
      this.pskIdentity = pskIdentity;
      this.pskPassword = pskPassword;
      // create a variable to hold our socket reference (once we send a message)
      this.dtlsSocket = null;
      // randomize the initial sequenceNumber
      // NOTE: this will throw an exception if the crypto library is not available.
      this.sequenceNumber = CryptoUtils.crypto.randomBytes(1)[0];
      // create a hash to hold a record of all outstanding messages which are waiting for an acknowledgment
      this.messagesWaitingForAck = {};
      // create an array to hold all outstanding commands which are waiting for responses
      this.pendingCommandCallbacks = [];
  }
docs: * OBJECT INITIALIZATION FUNCTIONS **