CHEF-4312 Fix compat for file resources managing content via symlink

- Fixes CHEF-4312 http://tickets.opscode.com/browse/CHEF-4312
- Adds resource attribute `manage_symlink_source` to file resource and
  descendants. When true, file resources will manage the source file
  when a symlink exists at the destination path. When nil (default), the
  source file is managed, but a warning is emitted. When false, symlinks
  are not followed. In Chef 12, the default should be changed to false.