API-69 Add top level interfaces for call services
API-69 create an interface to the factory
API-69 Refactor and extract common classes for local and remote calls
API-69 Refactor classes to resolve dependencies
API-69 Change use statement