PDB-113 Remove swank

As swank is now a deprecated project. This patch removes swank support
completely from the code base.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #870 from kbarber/ticket/master/PDB-113-remove-swank

PDB-113 Remove swank
PDB-402 Remove ahead-of-time compilation

This patch removes AOT compilation from our leiningen project and updates
all relevant shell scripts to use the non-AOT methodology for invoking
clojure projects.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #871 from kbarber/ticket/master/PDB-402

PDB-402 Remove ahead-of-time compilation
PDB-476 Decorate the terminus code with Puppet profiling blocks

This patch adds some select profiling blocks to the PuppetDB terminus code.

The profiler is provided by puppet core from Puppet::Util::Puppetdb#profile,
which has recently become public for our use. We provide here in our own utils
library our own wrapper implementation that can be mixed in.

Key areas of our terminus functionality have now been profiled with this
patch:

* Entry points are profiled and identified by their entry methods (save, find,
  search etc.)
* Remote calls, HTTP gets/posts
* Code that does any form of encoding/decoding that might be potentially slow
  at capacity.

The style of messages I've used follow along with the existing Puppet profiling
examples already in place so as to be readable together. We have prefixed our
profile message with "PuppetDB" for easy searchability also.

I have provided a small FAQ entry that explains in brief the process of
debugging, although we lack something to link to in Puppet for a more detailed
explanation. This will probably need to be fixed if better documentation comes
available.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #872 from kbarber/ticket/master/PDB-476-terminus-profiling

PDB-476 Decorate the terminus code with Puppet profiling blocks
Port to trapperkeeper 0.3.4

This commit updates PuppetDB to use the new trapperkeeper 0.3.4
API.  This includes:

* Slightly modified syntax for defining services and service
  lifecycle behavior
* Switch from log4j to logback, update documentation and packaging
  accordingly
* Switch from jetty7 to jetty9
* Add example of how to use "reloaded" interactive development pattern
  in REPL
* Upgrade to kitchensink 0.5.3, with bouncycastle fix for improved
  HTTPS performance

Conflicts:

	project.clj
	tasks/template.rake
	test/com/puppetlabs/puppetdb/fixtures.clj
	test/com/puppetlabs/test/http.clj
Add back in the placeholder log4j.properties.erb
Add `modify_config_setting` helper method for acceptance

Prior to this commit, a lot of the acceptance tests were
written to just concatenate new config settings to the
end of the config files.  This relied on the old config
behavior where we allowed multiple occurrences of the
same config setting, and the last occurrence would win.

This commit adds a helper method that uses the inifile
module to modify the settings in place, rather than
adding duplicate copies of them.  It also updates
all of the tests that were written using the concatenation
pattern to use the new method instead.
Update CLI tools to use new form of specs for args