Merge pull request #7431 from s0undt3ch/hotfix/lint

Fix `pep8` `W291` and `E231` issues.
Move jinja template files into salt/templates

See #7291. This is the first step.
Properly identify Raspbian
Use debian_service as service provider for Raspbian
Fix traceback in service.py when OS not identified

If the OS was not properly identified, salt/modules/service.py is used
as a fallback provider for the service module/state. However, the way it
looks up the location of the initscripts directory results in a
traceback if the OS grain isn't in the lookup dict.

This commit simplifies the lookup dict and has the module use
/etc/init.d as the location for initscripts if the 'os' grain is not in
the lookup dict, fixing this traceback.
Updated versions for file.replace file.search functions

This is going out with 0.17 instead of 0.17.1.
Shouldn't put a newline there
Merge pull request #7435 from holmboe/rh_ip-templates-dir

Move jinja template files into salt/templates
Merge pull request #7434 from terminalmage/issue7371

Properly identify Raspbian to fix service/pkg support
State calls now fail if non-supported arguments are used. Fixes #6962.

* Removed `format_call` from `salt.state.State` since it was almost a one to one copy of `salt.utils.format_call`.
* The `format_call` in `salt.utils` was modified to accept initial return data(to provide the functionality from the removed `State.format_call`.
* While the function arguments are being queried/matched, those used are removed from a copy of the passed data. Once finished, any remaining keyword arguments which do not match those allowed on the `expected_extra_kws` keyword argument to `format_call` will raise a `SaltInvocationError`.

This will prevent any future bogus bug searching like what happened on #6912 because the wrong state function argument was being passed.
Updated docstring. Double to single quotes.
Instead of failing, let's return warnings to the user to know what's going on.
Use `salt.utils.is_windows()`.
Formatting, Coding Style and PEP-8.
Use the already existing `context` keyword.
`salt.utils.decorators` is now a package.
`SaltInvocationError` now also subclasses `TypeError`.
Improved logging messages formatting.
Error signatures changed, lets update test cases.
Improve `format_call` keyword arguments passing.

Pass keyword arguments as keyword arguments, not as arguments.