(FACT-332) Add cfpropertylist task to facter

As cfpropertylist is no longer vendored within facter, but it is still needed
at runtime for facter, this commit adds a simple task to fetch, unpack, and
stage cfpropertylist within the facter libdir, where it will be installed
automatically in the apple package. This task is intended to be used only when
building apple packages.
(FACT-332) Make the package:apple task depend on cfpropertylist

Now that the cfpropertylist task exists, this commit defines it as a pre-task
for the package:apple task. This will ensure that cfpropertylist is fetched and
unpacked before making the apple package, but not before other packaging
tasks, such as deb or rpm.
(maint) Load extra tasks before loading packaging

Because the apple task now depends on the cfpropertylist task, the packaging
will verify that such a task exists when loaded. This means that the extra
facter tasks must be loaded before we load the packaging tools. This commit
moves the facter task loading to before the packaging tool loading.
Merge pull request #638 from haus/ticket/facter-2/fact_332_add_cfp_at_build_time

Fetch and unpack cfpropertylist at build time for apple packages