Yes. It will use the external_id, and if there is no match, it will use email.
No, Discourse implements both sides of the protocol. You can even try that: Go to https://theme-creator.discourse.org and log in there – you’ll be logged in automatically through your Discourse Meta account