If an entity is persistable it means that they are capable of being saved to the database. I'm not sure if I understand your question completely but the difference between non-persistable and persistable entities is only that you can save objects of persistable entities to the database (meaning they become persistent) and can't save objects of non-persistable entities to the database.
You don't really HAVE to delete objects of non-persistable entities, though as long as they are referred to by something they will live in the memory of your application so it might still be a good idea.
There isn't much difference between the 2 entity types for objects that haven't been stored in the database yet, the non-persistable modifier is just convenient so you know it's a temporary object.
Before version 4, all object instances were immediately inserted in the database on creation. If you are still using old (version 3 and before) create actions and new buttons in converted projects, this is still the case (for backward compatibility reasons)
It's quite likely that most of the modules that are currently in the appstore still use the old create actions and new buttons.