Match messages to transactions.
Add EventEmitter.listeners function.
Add Heap_Protocol.__push function.
Fix issue with matching messages to server transaction.
Refactor building transaction match string.
Add transaction state machine.
Transport.send set only sent-by parameter in Via header.
Set state to terminated on transport error.
Add transaction timeout timers.
Add retransmission and termination timers to transactions.
Send ACK for non-200 final responses.
Use reliable transport for transaction module tests.
Send 100 Trying by transaction layer.
Add server responses retransmissions.
Emit error event on transport error.
Rename Transaction attributes.
Remove temporary code.
Pass error argument for error event.
Fix transaction unit tests.
Set attributes as boolean values.