fastboot: add UDP protocol.

Implements a UDP protocol for fastboot, documented in
fastboot_protocol.txt.

This version of the protocol does not include multi-packet windowing,
which will likely be needed to achieve reasonable speeds over WiFi.
Since we don't have any WiFi use cases yet, we'd like to get this in
now and update the protocol later if it becomes necessary.

Usage:
  fastboot -s udp:<hostname>[:port] <command>

Bug: http://b/26154914

(cherry picked from commit 4601c978cad8b69e15ed63664ebb5dcf6aaf21b3)

Change-Id: Ia5bbae6bcd6405671f594d7120b3994746d234d3
6 files changed