I have not much experience of exporting functions/classes to dll libraries but I understand that I should consider using interfaces when exporting classes to provide binary