Honestly, if you're just starting out, go with Backbone. Start there, then add marionette to the mix. From there it'll be a lot easier to understand ember or angular. Ember will feel a lot more natural from that point though.
The reason is, don't get confident in magic. Learn good OOJS, then learn what some simple helpers can do. At that point, you'll understand the magic of angular and ember better. Maybe others won't agree, but, as an anagoly, you really shouldn't jump into android development before you have a good handle on java.
After Backbone, as you start to get into the realm of dozens and dozens of models, which is more appropriate?
I've heard Ember is better for "data/model-driven" apps whereas Angular is better for "interaction-driven" ones. Is this an appropriate analogy? I wish I had the time to explore both for their own merits.
If you were going to develop the next Gmail, which would you choose and why?
One of the core contributor to Rails (Yehuda Katz) is a core contributor in EmberJS. I bet the two will integrate nicely (using the ActiveModel::Serializer gem).