code: def _namedtuplify(mapping):
      
      if isinstance(mapping, collections.Mapping):
          for key, value in list(mapping.items()):
              mapping[key] = _namedtuplify(value)
          try:
              mapping.pop('__name__')
          except KeyError:
              pass
          # return collections.namedtuple('settingsa', dict(**mapping))(**mapping)
          return _MutableNamedTuple(mapping)
      return _parse(mapping)
docs: Make the dictionary into a nested series of named tuples.
      This is what allows accessing by attribute: settings.numerics.jitter
      Thank you https://gist.github.com/hangtwenty/5960435