WIP issue-358 COPPA fix

Need to add validation and tidy things up. Also, maybe i should split all of this into a mixin?
This widget adds a lot of complexity to this module, I'm wondering if we should put it into its own Module to make testing easier.