Populate and build components recursively from JSON structure