Remove reference to non-existant config.tests
Update all legacy-style modules

I.e., modules that use "require = [options]".  Nowadays that should be
written as

  {
    options = { ... };
    config = { ... };
  };

Also, use "imports" instead of "require" in places where we actually
import another module.
Get firmware from lib/firmware
types.list -> types.listOf