Sort order and kindp of false



sort([%pi,true,3,false,a,b,x,y],'orderlessp)
   => [3,%pi,true,a,b,x,y,false]

looks correct except for false, which is a constant, and should come before
all variables. But orderlessp(false,x) => false.

The problem seems to be that (constant nil) => nil, which is wrong. And
that is because (kindp nil '$constant) => nil. Also, the user function
constantp(false) => false. The problem seems to be that the db.lisp code
treats nil as a special marker.

Do we agree that false is a constant and should sort like true? I suggest
we special-case it in kindp; really fixing db.lisp is daunting....

                -s