See Design doc for details including why we are doing this.
This was tested on hardware yesterday and appears to work. Next step would be to review it, preferably while pair programming, since this is a big PR, then merge it once we are comfortable not going back to master-board for this job.
Note that this PR contains some work already discussed in #233.
It also contains basic simulation code. (fixes #240 fixes #244 fixes #245 )
See Design doc for details including why we are doing this.
This was tested on hardware yesterday and appears to work. Next step would be to review it, preferably while pair programming, since this is a big PR, then merge it once we are comfortable not going back to master-board for this job.
Note that this PR contains some work already discussed in #233.
It also contains basic simulation code. (fixes #240 fixes #244 fixes #245 )