APIClient and APIFactory contracts
Summary:
To improve dependency injection in ProjectsMap, we create two
interface contracts, APIClient and APIFactory, which abstract
an API client and a class to instantiate them.
That allow to easily inject an API client and increase components
independance.
Test Plan: A variation of fea5b9c has successfully been tested.
Reviewers: dereckson
Subscribers: alken-orin
Differential Revision: https://devcentral.nasqueron.org/D333