YouTube using self instead of OpenStruct for Representable
DRY up YouTube provider class