rename 'factor' to 'commands' for the CLI
Refactor DeepStruct