review edits; __neg__ now neg()
define canonical for BooleanAtom
quick