(PDB-69) Differential updates for catalog_resources

This commit combines catalogs and certname_catalogs tables and adds
differential updates for certname_catalogs similar to the current
fact and edges code
Added schema contracts to storage.clj
Moved diff-fn over to utils, schemafied it
Refactored some stored tests to use the new with-wrapped-fn-args
Fixes needed due to https://github.com/Prismatic/schema/issues/21. Switched from schema.core/defn
to schema.macros/defn and schema.core/String and schema.core/Number to String and Number. Loosened
the schema around resource parameters and the facts map.
Remove illegal keys from fact payload

This patch makes us strict about the exact set of keys we want to
include in the payload when we submit facts to puppetdb. The wire format
only allows for "name" and "values" keys, so that's all we should allow.
Merge pull request #779 from grimradical/strict_facts_payload

Remove illegal keys from fact payload
Added a warning comment about the timestamp/expiration keys for facts
Change from reduce to inject for ruby 1.8.5 compat
Change from reduce to inject for ruby 1.8.5 compat
Switched test/schema.clj to to use platform specific Numbers/Strings
Changed the replace-facts test to pass in the correct facts map
Merge pull request #777 from senior/ticket/master/pdb-69

(PDB-69) Differential updates for catalog_resources
Update changelog for 1.6.0
Remove changelog items included in prev releases
Merge pull request #781 from grimradical/changelog_1.6

Update changelog for 1.6.0
Docs: add note about PE and jetty.ini
Docs: fixed typo
PDB-249 Fix command-processing configuration exceptions

The use of (s/maybe s/Int) for the configuration options store-usage and
temp-usage were throwing exceptions when these configuration options were
used.

So this is really a bug in the convert-schema support, but in our case
we don't need to support the concept of 'nil' or 's/Int' for these items
(which is what s/maybe effectively does) since they are already marked as
optional.

This patch removes the use of s/maybe removing the exception, but does not
fix the original bug.

Signed-off-by: Ken Barber <ken@bob.sh>
PDB-249 Pass through values directly during get-construct-fn for core types

Previously for types schema.core.Predicate the function get-construct-fn was
failing as there was no support. This patch extends the PredicateConstructFn
protocol to support these types by simply passing through the value without
coercion or change.

Signed-off-by: Ken Barber <ken@bob.sh>