generates fake implementations of interfaces for testing