Could you just have a single field for name and allow anything in that field? The only downside is you can't do something like "Hi ${FIRST_NAME}" in your emails, but the upside is that it basically handles any name or name order, e.g. Indonesian single names, Spanish names with the mother's surname included, etc.