ubx driver cleanup and improvments

 - CPU consumption reduced in 6 times, now ~0.3%! The problem was in too frequent calls of read() that returned only 1...4 bytes. Now sleep for 20ms before read to allow some data collected in UART FIFO. This will result max additional latency of 20ms, but latency from additional SVINFO message in update is ~50ms, so I think it's not a problem.
 - Send update only if full packet of messages received, assume that if new new bytes received in 2ms.
 - More clean autobauding code
 - SVINFO parsing cleanup, unnecessary memcpy removed
 - Message class/id switches cleanup, intermediate enums removed. Saved one "switch" and few pages of code
 - Wait for ACK on each configuration command
 - Print warnings in console on unsuccessful configuration
 - Many other minor changes