As for the puzznic clone. Right now after having not touched it for over 24 hours I quickly coded a bit on it. The blocks now fall, you can grab a block and push it to the sides if they're not moving to a side right now.
All that needs before the graphical polishing is to ensure that when 2 or more blocks bump together that they're destroyed. Should be easy enough.
Then I need a check to see if there are more blocks left in a level or if you proceed. And finally a level editor so you can play in something other than the boring 10x10 square level with a Block labelled 1 falling onto a block labelled 2 without having to hardcode every single level.