(SERVER-116) Reuse client instances

Reuse HTTP client instances in the ruby code rather than creating
a new one for every request.
Merge pull request #284 from fpringvaldsen/SERVER-116-reuse-client-instances

(SERVER-116) Reuse client instances
(MAINT) Update TK and Kitchensink dependencies
Merge branch 'master' into future

* master: (21 commits)
  (MAINT) Ensure gem subcommand tests honor GEM_SOURCE
  (maint) add config for admin API
  (SERVER-208) Improve error message for missing `puppet-admin` section
  (SERVER-114) /environment-cache header handling
  (SERVER-114) specify puppet.conf used by test
  (MAINT) Use GEM_SOURCE env var in Gemfile
  (SERVER-114) add comment about test coverage
  (SERVER-114) make API more RESTful
  (SERVER-114) endpoint to flush environment cache
  (maint) rename functions for clarity + consistency
  (MAINT) Add build & compare urls to travis template.
  (SERVER-167) Added language to syntax highlights
  (SERVER-138) Fixed typo
  Just fixing a spelling mistake
  (SERVER-203) Update to clj-http-client 0.4.0
  (SERVER-113) Add new puppet-admin-api HTTP endpoint
  (SERVER-167) Add documentation on `set_trace_func`
  (SERVER-113) Refactor whitelist logic out to ringutils
  (SERVER-138) Set name of doc section to HttpPool-Related Server Settings
  (SERVER-138) Addressed PR feedback
  ...

Conflicts:
	src/ruby/puppet-server-lib/puppet/server/http_client.rb
(maint) delete a couple unused functions
(SERVER-88) catch errors before they get to Jetty

Add a 'catch-all' middleware to both the Master and CA ring handlers
which catches any Exception, logs it, and returns a simple error message
in the response body.  This prevents Exceptions from propagating all the
way out to Jetty - if this happens, Jetty will generate HTML from the
stacktrace and return this to the client.
(SERVER-88) improve exception handling

* 'wrap-exception-handling' now includes the exception type + message in
  the response body it returns.

* Update the exception handler in the liberator resources to simply
  re-throw exceptions, causing them to be handled in middleware.
(maint) fixup botched merge conflict resolution
Merge pull request #296 from fpringvaldsen/update-to-tk-1.0.1

(MAINT) Update TK and Kitchensink dependencies
fix typo in docstring
Merge pull request #285 from KevinCorcoran/SERVER-88/no-html-in-500s

(SERVER-88) catch errors before they get to Jetty
Merge branch 'master' into future

* master:
  lein-release plugin: bumped version from 0.4.1 to 0.4.2-SNAPSHOT for next development cycle
  lein-release plugin: preparing 0.4.1 release
  (MAINT) Add some notes about debugging / ruby
  (MAINT) Fix typos, simplify git submodule init for quickstart
  (MAINT) Update developer docs re: running from source
  DOC-1281: Puppet Server gems, puppetserver_vs_passenger
(SERVER-250) Document jruby-pool Admin endpoint

Document the new jruby-pool endpoint that was recently added
to the HTTP Admin API.
Merge remote-tracking branch 'origin/master' into future
(SERVER-256) Fix failing FOSS upgrade smoke test.

* This adds a method, package_upgrade, which always upgrades the given package
  regardless of whether there are changes both to the new version of the config
  file and to the previously-installed version.
* Also removes the puppet_server_name parameter on install_puppet_server which
  is unnecessary since as it turns out there is only actually one package name
  for puppet_server.
* Also removes some completely dead code which attemptes to modify
  SERVICE_NUM_RETRIES in puppetserver's defaults file. This variable is no
  longer used.
(MAINT) Bumped to version 1.0.0 for release
(SERVER-211) Update JRuby to 1.7.17 and fix String::crypt

Versions of JRuby prior to 1.7.17 used an old, DES-only implementation
of String::crypt. With 1.7.17, it switched to the native crypt(3)
implementation, bringing it in line with MRI.
(MAINT) Update to 1.0.1-SNAPSHOT for development
(docs) Add Jekyll's yaml frontmatter to all docs pages

This will let us display Puppet Server docs on the main website.
(docs) Adjust wording of logging config section