fix folder architecture and add comments