CNF

@Hoss93 
I feel that push negation should this by itself and no push_nots_inwards function is needed. in push negation each class knows what it is and returns the correct terms if it is negated or not.