Don't use global schema validation

Prior to this commit, the `puppetdb.schema` namespace contained
a top-level call to primsatic's `set-fn-validation!` fn.  This
enabled strict schema validation for every occurence of a schema
annotation anywhere inside the JVM.

This behavior means that other libraries that use schemas lose
control over when strict validation occurs and when it does not,
which can cause unexpected behavior and potentially even bugs.

This commit removes the global toggle and instead prefers
explicit metadata to enforce validation on the various functions
that require it.
(PDB-238) - Remove v1 API - part 1

This commit starts some refactoring to the existing PuppetDB HTTP API to make
removing v1 portions of the API easier. This is being broken into two commits
as the 1.6.x branch will benefit from the refactor and master can build on this
and actually remove the v1 stuff (along with the docs etc). This commit contains:

- Moving v1 functions used by v2/v3 to api.clj
- Having v2/v3 call into api.clj from their routes
- Move former v1 tests into test/api.clj
- Changed the v1 tests to use the functions themselves (not going in through the top *app*)
- Add tests for the same api calls going through both v2 and v3 routes

Conflicts:
	src/com/puppetlabs/puppetdb/query.clj
	src/com/puppetlabs/puppetdb/query/nodes.clj
	test/com/puppetlabs/puppetdb/test/http/v1/command.clj
	test/com/puppetlabs/puppetdb/test/http/v1/deprecation.clj
	test/com/puppetlabs/puppetdb/test/http/v1/facts.clj
	test/com/puppetlabs/puppetdb/test/http/v1/metrics.clj
	test/com/puppetlabs/puppetdb/test/http/v1/node.clj
	test/com/puppetlabs/puppetdb/test/http/v1/resources.clj
	test/com/puppetlabs/puppetdb/test/http/v1/status.clj
	test/com/puppetlabs/puppetdb/test/http/v1/version.clj
	test/com/puppetlabs/puppetdb/test/query/facts.clj
Split metrics/version/command out of api.clj and into their own
namespaces
Merge branch '1.6.x'

* 1.6.x:
  PDB-407 Fix dev repo retrieval for fedora
  PDB-407 Make sure we add suffix for fedora packages
  PDB-407 Change gemfile reference for beaker to point to upstream
  PDB-407 Fix bug in init script for fedora
  PDB-407 Fedora 20 Acceptance Testing
  (packaging) correct path to libexec files for PE
  (PDB-425) Try SysV and SystemD on upgrades
  (PDB-425) Move daemon-reload out of install-only
  (maint) Remove Sid from package build defaults
  Invalid namespaces for tests http/nodes|fact_names masking failures
  (maint) Update RPM spec for RHEL 7
  (PDB-377) Disabling JAR repacking when creating RPMS
  Document repl 'host' setting
Updated the 1.6.2 release notes
Merge pull request #839 from senior/maint/1.6.x/1.6.2-release-notes

Updated the 1.6.2 release notes
Merge pull request #837 from senior/ticket/1.6.x/pdb-238-v1-refactor

v1 shared route refactor
Merge branch '1.6.x'

* 1.6.x:
  Updated the 1.6.2 release notes
  Split metrics/version/command out of api.clj and into their own namespaces
  (PDB-238) - Remove v1 API - part 1

Conflicts:
	test/com/puppetlabs/puppetdb/testutils.clj
	test/com/puppetlabs/test/http.clj
Merge pull request #832 from cprice404/maint/1.6.x/dont-use-global-schema

Don't use global schema validation
Merge branch '1.6.x'

* 1.6.x:
  Don't use global schema validation
PDB-234 Initial cut of v4

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