Update example code to use protocol
Merge pull request #112 from nwolfe/fix-readme

Update example code to use protocol
Add lifecycle fns to schema for service fnks

Prior to this commit, the output schema for the service fnks was
only including the functions from their protocols; it did not
include the lifecycle functions.  While incorrect, this was not
causing test failures because the default behavior for the
prismatic graph library is to *not* enforce validation of the
fnk schemas; referencing the lifecycle functions worked fine
with schema validation disabled since they were present in
the fnk map, just not in the output schema.

Failures did show up in other code bases where the validation of
schemas had been globally enabled, which highlighted the fact that
we should be using the schema validation test fixture in our tests.

This commit adds that test fixture, which did indeed cause the
tests to start failing; it also fixes the broken schema to get
the tests passing.

We also have been forced to temporarily use a forked version of
prismatic plumbing, due to a bug that makes their current
release incompatible with PuppetDB's aot.
Switch to prismatic release 0.2.1 with aot fix
Add initial CHANGELOG
Merge pull request #113 from cprice404/bug/master/schema-validation

Add lifecycle fns to schema for service fnks
Add configuration for lein release plugin
lein-release plugin: preparing 0.3.1 release
lein-release plugin: bumped version from 0.3.1 to 0.3.2-SNAPSHOT for next development cycle
Change deploy method to use `lein-deploy`

Using the ":clojars" method of deployment with the lein release
plugin does not result in the inclusion of test jars.  This
commit changes the deploy method to ":lein-deploy", which we have
had success with in the past.

This approach requires you to set the environment variables
"CLOJARS_USERNAME" and "CLOJARS_PASSWORD" before running
`lein release`.
lein-release plugin: preparing 0.3.2 release
lein-release plugin: bumped version from 0.3.2 to 0.3.3-SNAPSHOT for next development cycle
Tweaks to support a jenkins release job
Add documentation for bootstrap fns in testutils
Be explicit about which branch to push
Merge pull request #115 from cprice404/maint/master/jenkins-release-job

Prep for supporting a jenkins job for release to clojars
Merge pull request #114 from cprice404/maint/master/add-testutils-docs-for-bootstrapping

Add documentation for bootstrap fns in testutils
Coorce a lack of arguments into the empty list

The variable in the rest position of the positional args will be
nil if there are no further arguments.  This commit uses or to
ensure we get an empty list.

    user=> (defn foo [& args] args)
    #'user/foo
    user=> (foo 1 2 3)
    (1 2 3)
    user=> (foo)
    nil
Merge pull request #116 from richardc/allow_no_arguments

Coorce a lack of arguments into the empty list
(PE-2843) Make it possible to get a reference to a service from a service

Sometimes instead of just getting a reference to the functions from a
dependency service in TK, it is more useful to get a reference to the
service itself (e.g. the object that `satisfies?` the service protocol).
This commit adds a `get-service` function to the main `Service` protocol in TK.