Issue #1: Replace source code into new module structure