take an Option in the *_len static fns

There is currently no reasonable way to call static trait functions that
don't take or return Self or a derived type.
a more complete b2sum program