optimise analog reading code

* readPots function now reads first half of data from mux on first pass,
and second half on second pass, to avoid slowing down of column
switching in matrix