refactoring data dictionary to support groups
constructing field tree in datadictionary
fixed recursive component issue, some refactoring
some refactoring
group validation