config: example: add missing comma

Signed-off-by: Gregory M. Turner <gmt@be-evil.net>
KNGConfigItems: overridable fetal property

Signed-off-by: Gregory M. Turner <gmt@be-evil.net>
scripts/kernelng: config example: path creation bugfix

When checking whether to create the EKERNELNG_CONF_DIR, we obviously
care not whether KERNELNG_CONF_FILE exists, but EKERNELNG_CONF_DIR.

Otherwise, when the user does:

  kernelng config example --force
  rm /etc/kernel-ng/kernel-ng.conf
  kernelng config example --force

they will get an error.

Signed-off-by: Gregory M. Turner <gmt@be-evil.net>
KNGConfigItem: add public daddy property (ro)

Signed-off-by: Gregory M. Turner <gmt@be-evil.net>
KNGConfigItems: no '*' support

KNGConfigItems would create invalid clones if we allowed the
multiplication operator to be applied to them, so, don't.

Signed-off-by: Gregory M. Turner <gmt@be-evil.net>
KNGConfig: implement globals property

There are times when we don't care about the difference between the
'implicit_global' and 'global' sections, or, more accurately, would
prefer not to have to think about the added complexity having these
two sections creates.

This adds a globals property to KNGConfig which returns a virtualized
KNGConfigItems proxy, that is synchronized to the contents of the
two sections.  Unfortunately, this is extremely inelegant, requiring
every __damn__ __thing__ __under__ __the__ __sun__ to require
overriding, as we no longer want to get the inherited list behavior,
but instead to do some other completely crazy thing.

Tries its best to intuitively "just do the right thing".
Seems to mostly work.  Has some stiff limitations wrt. slice-handling
but fancy slicing of this object probably indicates you're using it
wrong anyhow.

Signed-off-by: Gregory M. Turner <gmt@be-evil.net>