text: Title: Allow the "value" argument to "@filter" to be optional and missing
  Body: Some filter operators, such as `is_null` and `is_not_null`, are unary and do not require passing additional values. Currently, because the `@filter` directive specifies the `value` argument as non-null (`[String!]!`), that means that the syntax for those filters is the following:
  ```graphql
  @filter(op_name: "is_null", value: [])
  ```
  
  If we changed the definition to make the list nullable and keep only the contents non-nullable (`[String!]`), we could instead have the possibly more ergonomic syntax:
  ```graphql
  @filter(op_name: "is_null")
  ```
  
  Do you think this is an improvement in ergonomics and worth considering?