test/runutil.vim: refactoring: processor files, flags. not functional yet.
test/runutil.vim: refactoring. improved 'processors' handling.

test/runutil.vim:
 * refactored many areas:
  * added runtime discovery of 'test output processors';
  * added "proper" processor-oriented test grouping (including version
     range checking);
  * test processing now uses the above grouping, so multiple 'test
     processors' could be used;
   * but currently, the "discovery" of which test processor is needed
      for each test is hard-coded;
 * low-level functions added: version tuples (implemented as lists)
    functions: comparison, set operations, etc.;
 * many bug fixes, as some functions implemented in previous commits
    were never executed until now;
test/runutil.vim: minor refactoring

 * test/runutil.vim:
  * added new dictionary entry layer: processor definition data is now
     stored inside a 'processor_defs_data' key (under which
     'process_script_out' is currently stored);
  * updated comments to reflect new structure;
test/runutil.vim: refactored. improved test group processing.

 * test/runutil.vim:
  * improved test group processing:
   * opens tab before the test processing starts, so that invoked
      scripts can use 'b:'-scoped variables in all cases (to be
      implemented later);
   * restores previous state in case of an error *and* if the test
      output buffer is empty;
   * reads the test output into the "test output buffer", as opposed to
      "editing" it (which is what the code up to the previous commit
      did);