Adding 3-clause BSD license
Added NIL and more constraints on types
Changed boolean functions to be strictly applied on boolean (and? or? xor?)
Added nil?