add  a few of setters on builders and add one more test

1. one defect found, engine and table comment are ignored.
2. there might be some useless setters, which need to be figure out