What are the trade offs for incrementing ids vs. fulltext keys for foreign key designs?
I'd suggest to use the id and not the username, because if you start to use the username as a join column in multiple tables, you've to remember to update all of them. 

The foreign key for the users table, becomes the primary key of addressdata table and the primary key must remain stable. It's a good practice to not change primary key fields. A primary key must exist when the record is created, and has to remain unchanged for the whole lifetime of the record.

If you'd like further insights The great primary-key debate is a great article.