remove dependencies on vendor api clients
refactor api and metadata mapping stuff into base provider