Simple IoC container for registering and resolving dependencies, written in Swift 3.0
Container.registerAsSingleton(APIManager.self) { NetworkManager(withProxy: AlamofireProxyImplementation()) }
For networking abstraction see Swift Network Abstraction
let networkManager: APIManager = Container.resolve()