Merge branch 'stable-2.0'
asyncd: fix races in writing to spool

Add a simple lock to the file. It avoids mixing data that will
disrupt the parsing when reading it back by munin-update.
asyncd: typo in pod
asyncd: try to reuse socket when asking node

We use one socket per process per run. So if --fork is
active, there will be no socket reuse.
asyncd: add the hostname in $0

This ease the fact when multiple async run on the same host
asyncd: fix timeout bug & adding some debug
asyncd: ignore current plugin if failing cnx to node

We should not die when failing to connect to a node. Just move
forward to the next plugin to fetch.
asyncd: close the datafile before rename

The flush might only be done on close, which was done on scope end
: ie *after* rename.

As the flush might only be done on close, external readers migh
then only see partial data, which defeats the whole purpose of the
atomic rename().

This commit fixes this race condition.
asyncd: quickfix a sleeping dataloss bug

When sleeping too little, the code just discards every plugin, and
reverts to sleep $timeout sec.

This is a dataloss bug, so it has to be fixed hastily.  An other
commit will fix it better.

Thx to trippeh on IRC for showing me the bug *very* clearly.
Merge remote branch 'official/master' into stable-2.0
Merge remote branch 'steveschnepp/async-fix' into stable-2.0
Update .gitignore.
master: always initialize the default cgiurl_graph value.

The cgiurl_graph parameter in $config is not set by defaule the same
way as the other values in Config.pm, as it may be calculated from
$config->{cgiurl}, if present.

Instead of initializing only when the revision does not match, do so
every time after loading the datafile section, as to avoid the
following warning:

    Use of uninitialized value in concatenation (.) or string at /usr/share/perl5/vendor_perl/Munin/Master/HTMLConfig.pm line 486.
master: simplify logic for mapping images to their path.

This is equivalent but we split the logic of deciding where the path
is going to be from setting it, using a single map() call.
master: provide a default to graph_strategy.

This allows $config->{graph_strategy} to be usable instead of
requiring munin_get.
master: avoid repeated tests on graph_strategy.
master: remove unused variable.
pod: declare all POD-processed files as utf8 encoded.

This allows proper handling of UTF-8 strings when the system is not
set up to use UTF-8 by default, and makes sure that names won't get
mangled.
Merge remote branch 'flameeyes/stable-2.0' into stable-2.0
Merge branch 'stable-2.0'