move default rule fields directly into the containing module

-- Before --
git module foo:
  rule:
    build: make
    export: out/

-- After --
git module foo:
  build: make
  export: out/

In the past we needed to avoid doing this, because named rules were
nested inside of modules, and there would've been confusion about which
module fields modified all nested rules vs just the default rule. Now
that the default rule is the only possible nested rule, the "export" and
"build" fields no longer need their own special "rule:" section. Yay for
brevity!
enforce that all plugin values are strings

This came up because the old "rule:" field got interpreted as a
(presumably invalid) plugin field after it lost its special meaning, but
its value was a dictionary, so it caused type errors in the plugin
calling code. Nip this in the bud.