Saturating vs wrapping operators are so nice! Apparently compiles to 3 or 4 branchless ops on most architectures.