Feature/#32 spew symlink

This patch let spew to follow the link and replace the destination. If original path is a symbolic link then resolve it till it is not a symbolic link before moving temp file to original path.

> If a spew target exists and is a link, we probably need to follow the link and atomically replace the destination instead.

I can't convince this patch is atomic or not, but it just works. If there are something that I've omitted, please let me know. :)