Is there someone in your life that for one reason or another, you always feel down, or lesser after speaking to them? Who always need to remind you of past mistakes, or even decide what was a mistake and continue to make you feel guilty over it? Do conversations with a friend of yours make you feel guilty without actually feeling you've done anything wrong? I have something groundbreaking to tell you:
IT'S NOT YOU, IT'S THEM.
These so-called friends feel inadequate in their own lives and instead of wallowing in their own failures, they obsess over yours. They bring up your faults, your past mistakes, and seem to have overactive morals, but only in terms of judging you or others, and never in terms of restricting their own actions... and they do this on a regular basis. By always putting you down, they don't have to pay any attention to their own shortcomings. So here's what I've learned, and I hope you'll take them to heart.
Your past mistakes don't have to follow you. If you cheated on a past spouse, did too many drugs, had a child out of wedlock or an abortion, have been to jail or arrested, whatever your past mistakes have been, they DO NOT have to have ANY influence on your present opportunities (well, except employment due to laws I suppose) and they do NOT have to lessen your current happiness. You've made your mistakes, you dealt with the consequences at the time (ie: loss of spouse, health, money, freedom for a period of time) and now you are done with it. You have moved on, and the rest of the people in your life will have to as well, or they can stop associating with you if they are unable to do so. They DO NOT have the right to constantly bring it up or make you perpetually feel bad about it. Remorse is not meant to follow you for the rest of your days. Once again, you deserve to be happy.
You have a right to take other people's words at face value. "I don't want to be in a relationship", "It takes time for me to trust people" or "My kids come first" MEAN JUST THAT. If the person saying these things only say them for the impression they leave or as some move in their sick game of mental chess, that's their damage. You are not to blame if you didn't read into it to realize "I don't want to be in a relationship" really meant "i want to sleep around, but don't you dare do the same", "it takes time for me to trust people" really meant "wait around for me while i sow my wild oats" and "my kids come first" really meant "i will use my kids as an excuse to not see you whenever you bore me". You don't have to play their games, you don't have to whip out your "insane to sane dictionary" to try to figure out what they REALLY meant. If you take their words at face value and react as such and they don't like the outcome, that's THEIR problem, not yours!
On that note, if you don't find the hidden meaning of what they say, and you somehow act against what they were trying to accomplish by saying this, and you still don't consider yourself in the wrong, don't cave and give them a fake apology. It's won't shut them up like you're hoping, it'll just give them free liscence to try and make you feel guilty about it again and again. Like a rabid dog, they will never drop it. So drop them.
You are not a bad person for not wanting to have someone in your life who brings you down. You can't change them. You will never be the help they need. They need therapy and quite possibly medication, and your poon and/or wang will never be a suitable substitution. Do not feel guilty for cutting them loose. Do not cave because you pity them. Just take a break, and you'll soon realize you don't care anymore. It's not heartless, it's self-preservation.