umqtt_process now processes all packets in buffer

The umqtt_process function now does process the entire input FIFO instead of
just the first packet. This removes the need for the caller to call the
function several times on receiving multiple MQTT packets at once.