Adding the ability for the file manage module and state to handle symlinks.

Adding the ability for the manage_file and manage state to properly handle symlinks.  This change adds the ability to specify if symlinks should be followed of not by the manage state and manage_file module, by default they are followed.  When follow_symlinks is True, the target file of the symbolic link is updated.  If follow_symlinks is set to False then the symlink is replaced with a real file with any updates that are required. Per #12582