Make config file top-level data structure a map rather than a vector

Updated README.md to encourage use of the map form. We don't mention the vector
form anymore, even though it will still work for backwards-compatibility.

Using a map has these benefits:
- We can add comments that apply to the entire file and appear in the web UI
  when the user views the config file. Also, Hesokuri can rewrite the config
  file automatically without clobbering the user's comments. (This assumes the
  user uses a :comment key rather than semicolons)
- We can add more configuration settings that don't fit into the source
  definitions.

See https://github.com/google/hesokuri/issues/8 for why this is desirable.
Require JDK rather than just the Java runtime

We must compile barbarywatchservice from source, which requires javac. Update
the README.md file accordingly.
Merge branch 'config-file-comments'