boilerplate city: __get/setitem__ tricks

This adds the neccesary infrastructure to make syntax like:

  c = KNGConfig()
  c.section('sys-kernel/genkernel')['nameprefix'] = 'XYZ_'

Do the right thing.  This is acheived by:

Making KNGConfig a subclass of OrderedDict

Making the KNGConfigItem comparable to itself

Making an intermediate KNGConfigItems class, which subclasses
list, extending it to have several optional dict-like behaviors
based on the <key/value> pairs corresponding to the KNGConfigItem
instances it contains.

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