Add module definition and dependency support