(keymatch): Replace member km_func by km_type. Initializers adapted.
(emp_config, print_config): Cope with km_type.
(worldxset, intset, floatset, optstrset, doubleset, longset): Unused,
remove.
(emp_config): Fail if specified file can't be read or contains errors.
Used to succeed always, returning RET_OK. RET_OK is not appropriate,
since this is not a command. Return 0 on success, -1 on failure.
Callers ignore failure at the moment. A missing or unreadable econfig
file used to be silently ignored. It is still ignored, but no longer
silently. It is questionable whether ignoring is wise, but that's
left for another day.
(emp_config): Improve diagnostic messages.
(set_option): Move diagnostics to caller.
(emp_config): Ignore leading whitespace in `#' comment lines.
(print_config): Simplify printing of km_comment.
(set_option): New parameter val, so it can set and clear options.
(delete_option): Remove.
(KM_ALLOC): Turn macro into enumeration constant.
(KM_INTERNAL): New.
(xdump, xdver): New version dump.
(keymatch, infodir, datadir, teldir, upfil, downfil, disablefil,
telfil, annfil, banfil, timestampfil, privname, privlog, update_times,
update_demandtimes, game_days, game_hours): Use plain char * instead
of s_char * for strings, void * for generic pointers.