testing best approach to sub modules and my architecture philosophy