Added handling to only define used rfc2119 terms

Addresses the issues presented in #345
nit: whitespace before function (ignore if this is convention, just looks strange to me)