Allow `test.warnings` and `test.assertions` to be defined as either a
list, or a function coerced to a list.
When defined as a function, it is supplied an `expect` function which
provides some syntactic-sugar for defining simple expectations.
This is an alternative to the current approach of defining that `expect`
function on an ad-hoc basis.
I prefer this to adding `expect` to nixvim's lib because:
1. That would require having access to `lib`
2. IDK where in `lib` such a specialized function should live
Warnings and assertions defined as `config.warnings` and `config.assertions`
respectively will be checked as part of the test derivation, instead of
when evaluating the modules.
Adds new `checkWarnings` and `checkAssertions` test options (default true).
Introduces the `test.runNvim` module option.
Deprecates the historic `dontRun` argument passed to the test-derivation
helpers.
Soft-deprecates the `tests.dontRun` attr used in tests currently.