Adds support for ping statistics.

When the ping command returns, we display statistics about the number of
ping request echoed without error, with error, the percentage of
erroneous ping message, the minimum rtt, average, maximum and standard
deviation.
Fixes a typo in a header.

This fixes a typo in a header of the firmware's protocol.
Adds the short channel option to the sniffer command.

The sniffer command supported the channel option. However the short
option was not recognized because it was not present in the getopt short
options string.
Resets input timeout when a message is read.

The timeout of the input loop was not reset when a message was read.
This patch fixes this and reset the timeout when a message is read.
Adds a new control type.

This patch adds a new control type used to confirm that a message has
been received and processed.
Waits for the processing of the message in the injector command.

When an ACK was not requested, the injector command exited immediatly
after the frame has been written to UART. There were not confirmation
that the frame sent was processed correctly by the firmware. This patch
fixes this by modifying the message callback into a tiny state machine
that will receive the processing confirmation.
Specifies when the ACK is received.

Until now when the injector command received the ACK it returned
silently letting the user guessing that the frame has been acknowledged.
This patch adds a message when an ACK is received including the duration
between the sending of the frame and receiving of the ACK.
Adds a default timeout for the reception of the ACK.

This adds a timeout for the reception of the ACK in the injector
command.