added deepcopy of interface and eliminated unnecessary functions. Added test for new functions