SI-8708 Fix pickling of LOCAL_CHILD child of sealed classes

When a sealed class or trait has local children, they are not pickled
in as part of the children of the symbol (introduced in 12a2b3b to fix
Aladdin bug 1055). Instead the compiler adds a single child class
named LOCAL_CHILD. The parents of its ClassInfoType were wrong: the
first parent should be a class. For sealed traits, we were using the
trait itself.

Also, the LOCAL_CHILD dummy class was entered as a member of its
enclosing class, which is wrong: it represents a local (non-member)
class, and it's a synthetic dummy anyway.
I see that the two have some tests in common, but logically they do different things. For example, we don't need a special case for `LOCAL_CHILD` in `isLocalToPickle`. I don't think it's more clear to share.

```
// not sure what this should be called, what it expresses
def common(sym) = ...
def isLocalToPickle(sym) = someTests && common(sym)
def shouldEnterInOwnerScope == someOtherTests && common(sym)
```