Revert "Revert "better organization""

This reverts commit 00df5cc2c24d50625124ea437e0b5d8d3c381e7a.