(PE-3659) Update Jetty shutdown processing for new TK release

This commit updates the project.clj dependency to a new Trapperkeeper
version (0.4.0) which has support for calling service stops when an
error occurs during service startup.  The related Trapperkeeper changes
were done in the pull request associated with PE-3657.

This commit also updates the project.clj dependency to a newer version
of Kitchensink (0.7.1) in order to stay in sync with Trapperkeeper's own
dependency on Kitchensink.

This commit adds shutdown reason awareness into the the ring_app
repl.clj example, also made possible by changes from PE-3657.

This commit updates the `shutdown` core function to support
shutdown being called when the Jetty server was not fully started --
essentially avoiding an exception that would have been thrown during
shutdown because of the missing Jetty server instance on the service
context.

This commit includes two new references in the .gitignore file -- to
remain in sync with the Trapperkeeper project's .gitignore file.