Got media controllers working just like content, have tried to share as much code as possible between them. Can probably do a bit better but there's minimal code replication.