Feature/user migration

I agree about one-letter variables, but they are my go-to when there are name conflicts like "file", "dict", "type", etc.