Initial commit

Does nothing yet, will be building support for sentinel on this
branch.
Get redis-sentinel.conf file creation in place

This is just the basics so far, for sake of getting something in
place to build from.

Some assumptions are made:

* It's best to follow the model of putting constants in the
  params.pp and inheriting from that.
* A single params.pp is used (rather than creating one specifically
  for sentinel) because some existing redis params are used in sentinel.pp.

Things still to do:

* ensure service is installed and running
* ensure service is restarted on config file change
* flesh out tests
* deal with the fact that sentinel use the config file to keep state

On the latter, the most likely right thing to do is create the
config file on a different name and only copy it if there are
changes. See example from a different patchset trying the same
thing:

https://github.com/victorgp/puppet-redis/blob/f7be4187bbb77f991a53b004f8e3f2512c0c1b48/manifests/sentinel.pp#L96-L107
Update config file only when there are changes.

This allows the sentinel to write to the config file without
puppet making changes unless it has bonafide config changes it would
like to do.

This is done by having a 'refreshonly' exec which subscribes to a
config file that sits alongside the config file that sentinel
actually uses.
Ensure the sentinel service is running

Note the commented out lines in the sentinel.pp for the config_dir
and log_file resources. If these are there we get duplicate
resources. A few options to deal with this:

* Not worry about it: the dpkg and rpm packages make sure they are
  there anyway, we're really just insuring existence of default
  things. This only becomes a problem if someone wants to write
  log files and config files in unusual places, but if that's the
  case they are probably managing that anyway.

* Extract the conflicting resources to their own classes which both
  redis and redis-sentinel use. This gets complicated in the face of
  the way redis::params is used as a super class and other
  inclusions are done.

* Require stdlib and use ensure_resource (untested, but based on
  reading the docs it seems like it ought to work).

I'm inclined to the former.

Still missing and to do:

* confirm system restart on config file changes
* flesh out the tests
* implement monitoring of multiple masters (add loop to the conf
  file template and change data structure)
Add support for setting the log file

Useful while debugging issues with the redis-shutdown command in
the 2.8.15 rpm of redis. The problem is fixed with 2.8.18.
remove unused resources
Correct the tests to properly check config content

Also add tests for paramafied class creation.
Add document to redis-sentinel class

Doing so exposed some redundant parameters that have been removed
as well as an incorrect default value that has been corrected.
Update README
Merge pull request #14 from cdent/sentinel-support

Sentinel support