Initial support for MediaRenderer API

Adds the basic skeleton code that compiles, some apis might have bugs, but most of them works.