make test suite coverage more deterministic

One thing that appears to be happening in the coveralls integration is some small blocks of code seem to be changing coverage without obvious corresponding changes in source code or tests. This can cause false positive indications of decreased coverage reported in things like pull requests. We should eliminate as much of this indeterminacy as possible.

One example is https://coveralls.io/builds/16676967/source?filename=src%2For%2Fcircuitstats.c#L879

This ticket should probably have child tickets for specific instances of this problem.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information