Was this a 5 gallon batch? From that recipe, I wouldn't expect the gravity to be above 1.060 and that's if the malt extract was dry. It would be closer to 1.050 if it was liquid extract.
Rehydrate dry yeast at around 104-110F. Adding some GO-FERM helps.
If you have a gravity of 1.023, then you are/were fermenting. So you didn't kill the yeast.
How long do you watch the airlock to look for bubbles? At that gravity and time, I'd expect to see a bubble every few seconds.
The foam on the top is krauesen; it's ale yeast doing their thing. It's a good thing. It means you're still fermenting. When you're done, this foam collapses and sinks to the bottom and the beer becomes bright.
You said you're using a bucket. Could it be that the lid isn't tight or the airlock isn't firmly seated, so the CO2 is escaping through some path other than out the airlock? What kind of airlock are you using and how did you fill it?
Keep watching the krauesen and keep taking daily gravity readings. When the beer is bright and the gravity is stable, you're done.