Enable GHC profiling to vastly improve performance

This is really weird & either a GHC bug or some deeper issue with the
code (something to do with memory allocations, garbage collection,
excessive lazyness etc). Need to investigate further...
Use Set for clause locality testing
cleanup, remove most of the debug output
Move construction of B clause set upwards

Instead of implicitly constructing the A clause set every time we
interpolate, we just reuse the B clause set constructed by 'check',
which remains static during fixpoint detection.
fix Ord instance of Literal (make compatible w/ Eq)
replace b CNF with ClauseSet throughout
Incrementally build B LitSet for interpolation
Cleanup