1. Snapshot is simply CP that was not removed. So when snapshot is created, additional CP is triggered. From now on it is not different from regular write path.
2,3. Snapshots are crash consistent. Some applications can do better and create application consistent snapshots. That's what various snap managers do.
4. Because it was implemented this way?