Changed architecture. For now using the Module pattern