1) Store account data as a json type, which includes all
devices in a single object.
2) Simplify message delivery logic.
3) Make federated calls a pass through to standard controllers.
4) Simplify key retrieval logic.
1) Honor a twilio.international configuration boolean that
specifies whether to use twilio for international destinations.
2) If a nexmo configuration is specified, and Twilio fails to
deliver, fall back and attempt delivery again with nexmo.