Add LL(*) code generator and C driver