Video module must handle xml attrs

LMS-11491

@doctoryes @cpennington please review
Out of belief that python's generation of these closures is more expensive than I originally assumed, I moved this out off the loops so it's not generate per module.