Improvements for REPL-driven development

This commit does the following:

* Adds a gitignore for `dev/user.clj` so that developers can create
  a file there w/o worrying about it getting tracked in VCS
* Modifies `dev/user-repl.clj` so that developers can override the
  default REPL Puppet Server config settings in their own `user`
  namespace.
* Provides an example `user.clj.sample` file, which can be copied
  to `user.clj`, which has an example of how to override the
  config settings plus a convenience function for loading the
  `user-repl` namespace and launching Puppet Server.
* Modify `project.clj` to define `user` as the default REPL
  namespace.
(SERVER-137) optimize /certificate_statuses

Deserialize the CRL from disk only once per request to
/certificate_statuses, instead of doing it for each certificate on disk.
(SERVER-120) Update version to 0.4.0 for release
(SERVER-120) Update CHANGELOG for 0.4.0 release notes

Contains changelog updates for the release summary.
Merge pull request #266 from nwolfe/svr120-release-notes

(SERVER-120) Update CHANGELOG for 0.4.0 release notes
Merge pull request #265 from nwolfe/svr120-update-version-number

(SERVER-120) Update version to 0.4.0 for release
(SERVER-120) Bump version to SNAPSHOT
Merge pull request #267 from nwolfe/svr120-snapshot-version

(SERVER-120) Bump version to SNAPSHOT
DOC-1281 Revised Puppet Server configuration.markdown

Revision + edits.
Squashed commits.
DOC-1289: Puppet Server known_issues page

A few small edits... nothing major here.
DOC-1281 Edited Puppet Server install_from_packages page

Revised the Puppet Server Install from Packages page.
DOC-1281: Puppet Server install_from_packages page

A few more edits.
DOC-1281: Puppet Server install_from_packages
(SERVER-136) Add docs for http client SSL config
(SERVER-136) add link to oracle docs for cipher suites
Merge pull request #256 from cprice404/maint/master/SERVER-136-docs-for-http-client-ssl-config

(SERVER-136) Add docs for http client SSL config
Merge pull request #257 from cprice404/maint/master/repl-improvements

Improvements for REPL-driven development
(SERVER-112) Clean up puppet server ruby config

Prior to this commit, we were passing in the optional profiler
object from the Clojure code to the Ruby code as a first-class
argument to the constructor of our Ruby `Master` class.

It's becoming clear that we're going to have more of these
Puppet-Server-specific config options that we have to pass through
over time (including some things that will be coming soon in order
to complete SERVER-112), so this commit refactors the code to
pass in a map containing *all* Puppet Server settings as a single
argument.

It also makes an initial effort to start moving the handling of
some of those settings into the Puppet::Server::Config class,
and tries to group them together a bit more inside the body
of the `Master` constructor.
(SERVER-112) Refactor ruby settings initialization

This commit just introduces some new methods to help take care
of Ruby settings initialization, in preparation for cleaning
up `master.rb` a bit.
(SERVER-112) Move puppet/puppetserver ruby config out of `master.rb`

`master.rb` was getting pretty hairy.  This commit moves the code
related to initializing Puppet Server's ruby stuff into the
Puppet::Server::Config class, and introduces a new class
Puppet::Server::PuppetConfig to house the Puppet ruby initialization.