YouTube: OOP style
Merge branch 'youtube-refactoring' into develop