I suggested a structure like this (config_option_t) in email to Jan yesterday; I didn't do it because I was trying to keep the parser small. It's not a bad idea, though.