Use reference equality in Container as well.

If I'm going to do it in the layout managers, Container should do it too.
Sadly, there is no IdentityArrayList, but we just need to do an indexOf
check in one place.

Also:
- Clear components out of our old LayoutManager when it's changed.
  LayoutManagers can typically be shared (except our BorderLayout).
- We don't need to duplicate the implementation of remove for
  both forms of it.
- Created an enum for the common ChildOps... and iterate that loop
  by hand. Slight improvement to garbage creation during validation.
Use getComponentIndex() to find the index of a Child.

It will now properly use reference equality.

Also:
- Tolerate null values.

Really, List is similar to ComboBox, and should receive the slew of
improvements that have been made to that. But, nobody cares.
I'm not even sure we use List. Maybe one place.