I realize this is a WIP - thanks so much for pointing me at it!  You probably already know this, I just thought I'd mention it, so you'd know someone is testing out all the work you've so kindly put into this working on this!  :D  

When I am in the "Enable Two-Factor Authentication", select method view, and I pick "text message", it takes me to a view where I can enter a phone number, and only then is the `get_device` method on the `SetupView` called?  (at least as far as I can tell - apologies, I'm not too familiar with Django).

And `self.storage.validated_step_data` is `{u'welcome': {}, u'sms': {'number': u'+16178187997'}, u'method': {u'method': u'sms'}}`.

However, when I select "yubikey", it goes directly to the `get_device` method without asking for the key, so `self.storage.validated_step_data` is `{u'welcome': {}, u'method': {'method': u'yubikey'}}`.

Which results in this line currently producing the error:  `'NoneType' object has no attribute '__getitem__'`.