Первый вопрос решаем. Хотя не вижу особых проблем, если модуль соответствует интерфейсу.
Второй момент спорный. Во-первых, можно экспортировать константы. Во-вторых, нужно ли давать доступ к переменным модуля напрямую? Это ведь можно сделать через гетер/сестер.