introduce requiresArg decorator

Opening for discussion. I'm not sure this is an improvement.

Pros:

  - declarative
  - could be applied throughout the module, at which point `noArgsException` could be removed

Cons:

  - stack traces report "incorrect" line
  - performance penalty if applied throughout the module

Having organized my thoughts, I don't think this is a good idea, but I'll open a pull request anyway as the ensuing discussion may be fruitful.