Packages: use a separate yum persistdir per cache
Packages: better stringification/representation of OnDemandDict
Packages: fixed read-only yum cache

Replaced incredibly stupid (mea culpa!) and race-condition-prone
system that toggled filesystem permissions (what was I thinking?!?)
with judicious application of the yum cacheonly option.
Yum: Removed unused import
bcfg2-info: fixed automatch
Packages: make opportunistic yum cache creation respect metadata=disabled
bcfg2-info: added expirecache command to expire metadata cache
bcfg2-info: fixed expirecache
Packages: added lock to yum cache update
bcfg2-yum-helper: added missing docstring
man/bcfg2.conf: add documentation for fam_blocking option
Merge branch 'doc-fam-blocking' of https://github.com/AlexanderS/bcfg2 into maint

Signed-off-by: Sol Jerome <sol.jerome@gmail.com>

Conflicts:
	man/bcfg2.conf.5
Admin/Init: Add listen_all option

Some of these changes were suggested in github issue #29.

Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
doc: Update ubuntu quickstart guide

This commit fixes #29 along with 1450bd7.

Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
doc: Fix typo

Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
debian: Add south dependency

Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
Admin/Init: Fix default db location

Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
Make the server process always detach, even if started by init

Otherwise startup with systemd in type=forking fails since the daemon
will not fork.
Packages: Added timeout to bcfg2-yum-helper calls

This involved making the Yum backend use Bcfg2.Utils.Executor to call
bcfg2-yum-helper instead of subprocess.Popen directly.  This was
cherry-picked (kinda) from 3d06f311274d6b942ee89d8cdb13b2ecc99af1b0,
so will likely break the maint -> master merge in spectacular ways.
Packages: instantiate Executor before determining path to helper