Stage 2: Add write() support on cached sparse pages

This only works on filesystems that don't define their own ->write_begin()
and ->write_end() members, which ext4 does. Only tested on ext2.