add support for custom commands in redis plugin

Now that the redis plugin has moved to hiredis, it could
be worthwhile to add support for custom commands.

This diff implements a mechanism for executing commands which
allows for setting the type and type-instance. It doesn not
support hash or array returns, but if this is deemed necessary
could be added later on.

The canonical use case for this is for people using redis
has a queue (for instance, using solutions such as rq,
sidekiq and similar solutions) who want a simple way to
ensure the work queue size is not growing. To address this
you would use:

```
<Plugin redis>
  <Node local>
    <Command "queue_length">
      Exec "LLEN myqueue"
      Instance "myqueue"
    </Command>
  </Node>
</Plugin>
```

This would then produce a redis-local/queue_length-myqueue value.

If the idea has traction I'll add the doc bits.