Real meaning: Someone
who doesn't believe there is a God (an atheist)
Modern meaning: An insulting label used
by strict religious people sometimes just to atheist/agnostics, but also to anyone who doesn't follow his/her religion.
Note: Calling someone
a heathen, depending on the person, could be seen
as very disrespectful.