Make Predef.singleton_<:< and Predef.singleton_=:= inlineable.

Because they are singletons for efficiency, they are not allocated
every time you use them. But then they are not inlineable classes,
and hence did not cause the method call to be inlined, which is a
pity, since their apply method is an identity.

This commit makes any tree of these two types are likely
optimizable. With this, all that remains is a statement loading
the field. We make this elideable as well by noting that
Select(x, y) preserves the pureness of `x`, provided it is not
null. If `x` is a LoadModule(), it cannot be null, so we can
remove it.
Merge pull request #1281 from sjrd/opt-predef-conforms-and-equiv

Make Predef.singleton_<:< and Predef.singleton_=:= inlineable.