added MediaProviderApi service. still needs re-factoring