Module Patterns For JavaScript Modular Design