Reorganize modules + add Bag type + remove ObjId type
Add fieldName helper function
Extract recursion from HasField class
Failed newObj attempt + something else