Basic static analysis checks
splint struggles with unistd.h, so the #ifndef S_SPLINT_S conditional around #include unistd.h tells splint to ignore it. I'd rather not cater so specifically to quirks of the test programs, but they are otherwise so useful I think it is worthwhile.
Fixes for splint issues:
- splint -unrecog to ignore unrecognized stuff (mainly, getopt and other stuff from unistd.h, which we also ask splint to ignore since it chokes on the __BEGIN_DECLS macro)
- threshold type conversion
- use implicit trix_triangle struct initialization, mainly for simplicity