While it's not clear what happened here don't be too quick to give the dog a pass. Have him THOROUGHLY & professionally evaluated. IF it wasn't play the situation is potentially very dangerous for both your son & the dog. IF it was play then the dog clearly needs serious training & to learn some manners.
Wyowolf, from your description, the dog's behavior at best was inappropriate & showed poor judgment. This doesn't automatically condemn the dog, but you need to find out exactly what is going on with him, how easily it can be fixed, whether you can expect him to be safe & predictable in the future.
Family dogs must be extremely stable, reliable & discerning. There just isn't much room for error, especially with large, powerful dogs such as GSDs. While GSDs are a protective breed that can/should show appropriate aggression when necessary, it is of the utmost importance that this aggression be appropriate as to time, place, situation & degree.
IF this dog isn't well suited to children it's a kindness to return him so he can have a chance at a sitution better suited to him. Remember, he must be reliable not only with your son but also with your son's friends.