Fixing call to get_link_data_from_path()

In order to retrieve the LINK_DATA from a symlink, the second argument
of `get_link_data_from_path' must be the list of watched
resources.
First check if a symlink is valid, after if its is already watched

When find a symlink first resolve its path and check if it points
to a true directory.
If the path is nonexistent we can avoid to search if it is already
watched and skip, otherwise continue the checks.
Merge pull request #20 from 0xNaN/dev

Fix segfault and little refactoring in `watch_directory_tree`