This method go through JSON object and finds all CGs to set in a current state.
It also gives each CG it's a unique id. Each id is calculated in a following way:
If CG call is in the root of JSON object it's id will be equals to it's key in JSON
If CG call isn't in a root object it's id will be concatenated keys of
all parent objects + key of CG.
If CG call is in an object that is an element of array CG's id will be
concatenated keys of all parent array + "[i" (where i is a pos of parent object
of CG in array + CG's key)
This id also used in JSONObject.fillObject() to find CG to use when field that
should be set with CG is found.
jsonObject - - parsed JSON object
CGCreators - - hash of factories to create Choice Generators
list of choice generators that should be set in a current state.