Ava (Maura West) has at least two motives. No. 1 he knows she's really Ava and not Denise. No. 2 he knows she slept with her old flame Morgan (Bryan Craig)–her daughter Kiki's (Hayley Erin) current boyfriend. Morgan has plenty of motive because he doesn't want Kiki to know he's been schtooping Denise.
Madeline (Donna Mills) and Ric (Rick Hearst) have completely different motives. They are trying to get their hands on Nina's (Michelle Stafford) fortune and if he revealed the truth Nina would find out she's not crazy.
Nina could also be Silas killer. She has decades of wrath against her ex-husband for cheating on him with Ava AND letting everyone believe she kidnapped Ava's daughter a second time. Franco (Roger Howarth) could have killed Silas to protect the woman he loves, Nina.
Then there is Kiki. If there was ever an example of "thou doth protest too much" Tuesday's General Hospital was it. Kiki's blubbering howls and scarring screeches lasted forever and ever...and ever and ever and ever and ever and ever. Even if she's not guilty of killing her father Kiki certainly deserves the death penalty for crimes against sound itself.
Who do you think killed Silas?