Added code for new communication protocol, untested.

Changed unit of measurement to ml.

Time keeping is not accurate because of Bean.sleep calls turning off timers