merge switch/encoder functions
use pointer instead of array index
optimize initialization
make motor structs static
move encoder counters into motor structs