Adopt CNF and many things are improved.
Added the basic JoinGraph class.