Rewrote some, added to definition of CFG and BNF.