Eric, you are correct about how Kentico works, but its not any different than version 7. You are able to hold multiple login methods in the user profile, but what you are asking is really going to be more difficult than that and most likely require some custom C# to accomplish.
The issue you are going to run into is how to know that a user that registers via Facebook or FBA are the same person. You could rely on the persons name, but this brings up a whole slew of problems including did they type it in the same, are there more than one person with the same name. You could use the email for this, but again same issue, people could really get around this by using multiple emails.
Your best bet would be to use some kind of code that a user needed to enter to register that was unique to them (may or may not be practical based on your requirements) therefore you would know it was the same person and could check to see if they had already registered.
Your other option is to add a manual approval step into the registration process to QA on your own.
We've had this requirement many times ourselves and there is no reliable way to guarantee you will be able to keep users from duplicate accounts. Even people with the best intentions will do things with our stuff that we did not expect :) Depending on your use case, maybe one of these directions would help. If you don't have a lot of users then maybe checking one of the other registration fields (name, email, etc.) could give you at least a reduction of duplicate accounts.