Asylum should be granted when the person is in immediate danger of loss of life or liberty over something inherent to their nature, or due to choices that are made that would be considered inalienable rights within the country offering asylum. If sexual orientation falls into this category, then asylum should be granted. That being said, I don't think that the best way to improve the world is to remove all the undesirables from a given country. This gives the bad actor what it wants, and doesn't implement (or even leave the possibility of) change.