The scratches on Sam's shoulder make us believe that he's the one who killed Angie. The only problem is that I don't think they would've shown it if he really were the murderer. They want to make us believe that Sam's the murderer, in order to surprise us when we find out he's not. So, it might be him, but I seriously doubt it. But who could it be then?
The only one I could think of is Sam, because the fact that he suddenly cares about Junior, after 9 years out of his life, could make us think that the only purpose of them becoming closer is for Sam to put the blame on his nephew. He knows that Junior is mentally fragile so it would be easy putting the blame on him, like putting Angie's bracelet under Junior's bed so he thinks he killed her. He doesn't remember anything from that night, and it would be easy to make him think he killed her. I think that's why Sam suddenly cares about his nephew. I hope we're gonna find out who killed Angie in the upcoming episodes.