tested dereferencing and linking modules with all interface implementation