Make multivalued requirement parser more whitespace tolerant

This adds a few areas to the syntax where more whitespace is allowed:
a. before key - i.e. " x"
b. after key for in/not in  cases - i.e. "x HERE in (foo)"
c. between "not" and "in" for not in case - i.e. "x not HERE in (foo)"
b. between "in" and value set for in/not in  cases - i.e. "x in HERE (foo)" "x not in HERE (foo)"

There are still some areas left so this PR is a start:
a. in the values set - i.e. "x in ( a , b )"
b. after key for exists case - i.e. "x "
c. after end of values set - i.e.  "x in (c) "