So the character development in this installment was interesting and the plots uncovered and history revealed was great. I am liking Justine more as a character - she's becoming a stronger person and really wants to do what's right, not what she's told to do. The love triangle part wasn't annoying, going back and forth between the two constantly; she picked one and stuck with him, even when she was really attracted to the other, which I appreciate with so many other heroines jumping from one bed to another and back again. The ending was definitely a cliff hanger and I'm hoping the final book of the trilogy comes out soon so I don't have to wait too long to see what happens! 
 (view spoiler)[ The twist at the end was crazy! I was always sort of rooting for Packard and was happy when she realized she loves him and was going to run away with him. Then Otto kills Avery and has Sophia revise Justine to think it was Packard. There were a few clues that Otto wasn't the same and she was pulling away from him, but I have to say, I did not expect such dramatic action. I'm hoping that the pain behind her eyes when she thinks about Packard killing Avery is a sign that the memory is in there somewhere and will come back out in the next book. Maybe Ez can access it or something, bring it to the front of her mind. (hide spoiler)] 
 On a side note, she only called Packard by his last name, but she called Otto by his first - any significance to that?