Smoothing facets is not possible in facet models as far as I know.
Assigning appearances to individual facet features in a single model is also not possible (as far as I know)
One thing you can do, however, is to import your obj file into a part, and then create a family table where each family table member represents a single appearance or physical object in the scene. You can then assembly each family table member into an assembly and assign the appearance within the assembly.
Since you can't assign appearances to individual facet features, then you are stuck assigning a single appearance to the model and all it's features. however you can get around this by assigning each object in an assembly a different appearance. So, once you create all the family table members and assemble each into an assembly, you can then assign a different appearance to each part.
I grouped the sets of components since there were over 100 features in there. that way I could add the group as a feature to the family table instead of picking every single grape etc, and then having to toggle on/off in the family table. if you needed more individual parts, you would have to make a separate instance for each separate appearance/moveable part.
I do realize this is probably not "aesthetically" what you are looking for, however it is actually a good question, and I think this is a pretty good work-around when you are importing an underlay/reference model and need to be able to show/hide different parts and/or have different parts be different appearances.

