Bettertesting

Alex, incorporated your suggestions (which I greatly appreciate - as well as the info behind them)

Let me know if this looks better/ready to pull or needs more attention.   Thanks!
What is the right fix? I'm not certain of that. I would think that if someone submits `phone=h`, then they would expect to get a phone number with an empty string `raw` value and `type` set to `"home"`. I think that's what the types library is currently doing.