Handle Unicode for Incoming Keys

Kindly review my code
@adampalay  @zubair-arbi @waheedahmed @symbolist 
I think you could fix this bug simply by switching the conditional around so that `key in accepted_keys` comes first.

In fact, looking at `video_xfields.py`, all of the keys in `accepted_keys` are XBlock fields included in the video module, so the `hasattr(self, key)` call is always going to return true when `key in accepted_keys` does, so I think you can just drop that condition entirely.