Revert "Merge pull request #1901 from opscode/dont-prepend-to-relative-paths"

This reverts commit 1241ea6f9866d0e61d11129bb32e5fc96cd2bac0, reversing
changes made to 34d956c6b96087e6ca4bfbc9080037ded481709d.

Conflicts:
	spec/functional/resource/file_spec.rb
	spec/functional/resource/link_spec.rb
	spec/unit/provider/link_spec.rb
As https://github.com/opscode/chef/issues/2580 summarizes, Link resource need to support relative paths in its 'to' attribute since one can create a symlink pointing to a relative location. This is useful if the directory that symlink resides in moves to a different place (e.g. mounting a disk on a separate location).

This commit preserves relative paths inside the "encode_path" method used by the link operations and expands relative paths in similar fashion when being used by file operations.
Cleanup Mixin:ShellOut use/specs
Use extend instead of opening class and including
Renamed dummy_obj to shell_out_obj
Merge pull request #2629 from opscode/jdm/shellout-spec

Cleanup Mixin:ShellOut use/specs
CHANGELOG information for https://github.com/opscode/chef/issues/2580.
Merge pull request #2623 from opscode/sersut/revert-1901

Preserve relative paths in Link resource