[ms5611] Fix baro i2c transactions

Since the simple i2c driver for linux does busy waiting on i2c_submit (and not queue a new transaction),
setting the transaction status to done at the end (with a new transcaction in between) will set the status
of the wrong transaction...

Did not seem happen with the other i2c implementations (lpc21, stm32) so far, but since they add the transaction
to the queue which is handled in the I2C ISR, it could also happen there (race condition).

closes #960