elasticsearch returner.

Dependencies:

- official elasticsearch python client
- jsonpickler.

configuration is defined in the master config file:

```yaml
ext_job_cahe: elasticsearch

elasticsearch:
    host: 'some.host.com:9200'
    index: 'salt'
    number_of_shards: 1 (optional)
    number_of_replicas: 3 (optional)
```
Added preliminary documentation
correct master settings
add link to elasticsearch client library docs
fixed lint errors
Added module and state for adding new firewall rules
Add extra handling to highstate outputter for 'Comment'
Ensure that freebsd service rc.conf ends in newline before appending
Add note about ``if_missing`` to archive.extracted
Added a _utils sync mechanism for distributing utility source files to minions (#12712)
Fixed whitespaces
Fixed incorrect indentation
Better sysctl test detection.

Closes #12408
Pylint
Merge pull request #12847 from basepi/archiveextracteddocs12498

Add note about ``if_missing`` to archive.extracted
Merge pull request #12856 from SmithSamuelM/sam_raet_39

Fixed  a couple of bugs from latest develop. Added some changes for Raet changes
Populate 'Changes' on docker.installed container creation
Merge pull request #12858 from SmithSamuelM/sam_raet_39

removed debug line
Move mine_interval example to a minion conf file

mine_interval has no effect when added in a pillar
Change default output_loglevel to debug