Adding interfaces, and updating tests