semantic checking for kyzhai's slice
adding semantic checking slice of kyzhai, rewrite Makefile, stole a testall.sh script from Edwards, converted tab into blanks, fixed the shift/conflict bug of PERIOD parsing rules