Sorry you are going through this. It is very difficult situation when a dog can be sweet and loving one minute then vicious the next. Dogs like these are the most dangerous because they tend to be completely unpredictable.
He could have "snapped" for many different reasons. I would first suggest a complete health examination by a vet to rule out any injuries. If he is completely healthy then the next step is a behaviorist. A GOOD behaviorist might be able to find out what his trigger was if he has one. But you would still have to strictly manage him and who he is around to make sure his he is never triggered.
I would personally steer clear of any Ceaser Milan methods. They are very dangerous for amateurs to try and bullying a dog into not being aggressive is absurd IMO.
You have a few options though. You can choose to keep him and manage him, which will include never letting him near any strangers. You can accomplish this by crating him when people are over and never taking him anywhere that is heavily populated. You can turn him over to a trustworthy rescue that will only adopt him out to someone who is very experienced with aggressive dogs or you can have him humanely euthanized.
Personally, I could never manage a human aggressive dog. I live a rather social lifestyle and enjoy my dogs being around other people. I also could never give a human aggressive dog to anyone, including an rescue, because I would never forgive myself if the dog ever did any damage to a person. If it were my foster, as hard as it would be to do, I would have the dog humanely euthanized.
I would also suggest implementing NILF and a two week shutdown for any future fosters.
Again, sorry that you have to go through this. Good luck with your decision.