How Modular should Neural Module Networks Be for Systematic Generalization?