Things to do before 1.3:

 - Mimick cv_middle from existing entries, so that newly added
   variables get a proper spacing between variable name and value.

 - Mimick cv_after from existing entries, so that newly added
   variables get a semicolon, if the rest of the file uses it.

 - Add confctl_var_to_line().

 - Add confctl_var_find_one(struct confctl_var *parent, const char *path)

 - Add confctl_var_move_after(struct confctl_var *cv, struct confctl_var *sibling);

 - Build shared library.

 - Consider adding some automatic quote handling.


Things to do before calling it done:

 - Properly bail out on EOF without closing curly brackets.

 - Consider rewriting the parser using regexps; it's getting complicated.

 - Currently we always treat names without values as names,
   so things like 'meh { 1; 2; 3 }' became 'meh.1=\n meh.2\n meh.3'.
   Add an option to make them as values without names, like this:
   'meh=1\n meh=2\n meh=3'.  This would make nicer output for
   JunOS-like config.

 - The whole cv_reindent() looks fishy.

 - We can't handle '/* comments */' in the value, like this: 'name val /* comment */ ue;'.

 - We don't handle '/* comments */' between name and value.

