code: function makeDeepStructure(obj) {
      return Object.keys(obj).reduce((nested, key) => {
          assignProperty(nested, key, obj[key]);
          return nested;
      }, {});
  }
docs: Makes a deep structured object from a shallow object with dot-separated keys:
  { "key.with.nesting": "value" }
  becomes:
  { "key": { "with": { "nesting": "value" } } }
  @param obj
  @returns {{}}