Fix to avoid reading a file when no source is given

- file.managed was loading into memory the destination file even if no
  `source`, `contents` nor `contents_pillar` was specified. Changed it
  to force `replace` to False if no source was given
Merge branch 'develop' of https://github.com/saltstack/salt into develop
Erased some trailing whitespace
Fix breakage in npm.installed

This fixes breakage introduced in 74d5591 by removing an unsupported
argument from the call to npm.list.

It also fixes several instances of escaped single quotes being used when
raw strings are more suitable, and improves reporting in comments by
adding the "name" target to several comments that were missing it.
add test for npm.installed/removed
Merge pull request #13033 from terminalmage/fix-npm-traceback

Fix breakage in npm.installed
Remove unnecessary `:copyright:` and `:license:` from file headers
fix api change, but this outputs a lot to the console ...
Merge pull request #13040 from s0undt3ch/hotfix/cleanup-headers

Remove unnecessary `:copyright:` and `:license:` from file headers
Docker build working with latest API, enable use of DOCKER_HOST environment variable, us with cli
Fix lint issues and missing import.
file: fix when content is empty
Merge pull request #13046 from makinacorpus/f

file: fix when content is empty
Merge pull request #13022 from mirath/develop

Forced replace to be False in file.managed when no source is specified.
Merge pull request #13031 from panoptix-za/docker_io_updates

Docker build working with latest API, enable use of DOCKER_HOST environm...
Merge pull request #13037 from terminalmage/npm-test

add test for npm.installed/removed
Merge pull request #13041 from makinacorpus/cloud

fix api change, but this outputs a lot to the console ...
Merge pull request #13032 from gtmanfred/onlyif

add onlyif and unless to state internal keywords
check self.states instead of self.functions

13032