No one had to sell their soul. We just re-wrote how snapshots are done in 6.x. This re-write changes how the blockmap file is generated and give lots of benfits.
...
You may have heard about the "Split Blockmap"? This is the re-write I describe above.
Well, the split blockmap changes did more than just rewrite the snapshot code - it was a change to the way WAFL keeps track of which blocks are in use in general, and which blocks are in use in particular snapshots, not just a rewrite of the way snapshots were done.