Add support for logging severity

please review @r0mant @jeremyschlatter @anton-efimenko 
Both severities are referred to as `passed severity` in the function comment.

This function is also a little bit surprising. `X.ge(Y)` looks like it should mean `X >= Y`, but here it actually means `Y >= X`.