Merge pull request #591 from kbarber/maint/tests-puppetdb-ssl-setup-returns-1

(maint) puppetdb-ssl-setup returns 1 with legacy setup
Introduce command 'puppetdb' as a sub-command dispatcher

This patch includes a new base tool named 'puppetdb' thats job for now is
to accept sub-commands and arguments and execute their equivalent
puppetdb-<sub-command> command (if it exists).

This modifies all documentation to use the new syntax, and all acceptance
tests as well.

Signed-off-by: Ken Barber <ken@bob.sh>
Move sub-commands to libexec dir out of path

This aligns the behaviour with git, so that sub-commands belong in their own
libexec dir outside of the normal PATH of execution.

Legacy commands are left in their original path locations, but replaced with
a wrapper script that returns a warning and executes the new sub-command for
the user. This provides us with a way to eventually remove these command
place-holders when we are ready to remove the legacy hyphenated subcommands.

Signed-off-by: Ken Barber <ken@bob.sh>
Include legacy sub-command acceptance test

This patch provides a test to ensure legacy sub-commands are still working and
returning sufficient deprecation warnings.

Signed-off-by: Ken Barber <ken@bob.sh>