order(): fix remove() and update() when "equal" values in the set are not ordered in the same order as objects
pipelet.js, transactions:
  - allow packetization of non-immediate emits
  - limit end of transaction emit_add() use, but there are still some to optimize out
  - implement done(), terminate(), terminated(), packetize_add(), packetize_remove(), get_add_packet(), get_remove_packet()
  - implement Pipelet.._transaction_end(), _transaction_emit_add(), _transaction_emit_remove()
  - various transactions: use Pipelet.._transaction_end()