Add multiple source file and templating support to file.append (#6905)

Allow states/file.append() to use multiple source files and templating
to generate the text to be appended to the 'named' file.
Update Docstring
Remove the warning about bug #7290 now its fixed.
Fix typo - its 'source_hashes' not 'soures_hash'
Add spaces to fixup pylint warnings
found another missing 'space'
Change default parms to None instead of mutable []
Merge pull request #7376 from s0undt3ch/0.17

Cherry picked `salt.states.file` changes