code: function Packet(link, id, kind) {
    this.link = link;
    this.id = id;
    this.kind = kind;
    this.a1 = 0;
    this.a2 = new Array(DATA_SIZE);
  }
docs: A simple package of data that is manipulated by the tasks.  The exact layout
  of the payload data carried by a packet is not importaint, and neither is the
  nature of the work performed on packets by the tasks.
  
  Besides carrying data, packets form linked lists and are hence used both as
  data and worklists.
  @param {Packet} link the tail of the linked list of packets
  @param {int} id an ID for this packet
  @param {int} kind the type of this packet
  @constructor