add git ignore
comment unused code
generate group tree