(maint) Add utility to list all directories in a directory

For the deb repo signing, it will be useful to be able to list all
directories at the top level of a given directory. This commit adds such
a utility to Pkg::Util::File.
(CPR-52) Add deb repo signing method

The nightly repo work is working on already created repos, so all the
sign repos method for debian needs to do is to update the reprepro
configs for the repos and re-export them with signing enabled. This
commit adds a sign_repos method to Pkg::Deb::Repo to accomplish this.
(CPR-52) Parameterize Pkg::Deb::Repo repo_config methods

In signing nightly repos, it is important to keep the old repos and the
signed repos and their configs separate. This means that certain
assumptions that were baked into the repo config generation no longer
apply. The source and target of these methods need to be dynamic so that
they can be used on signed repos or repos in any path. This commit
applies those changes to Pkg::Deb::Repo to accomplish this.
(CPR-52) Add create_repos method to Pkg::Rpm::Repo

To mirror the debian counterpart, this commit adds a method to
Pkg::Rpm::Repo to create repos from a directory. It is more atomic than
the other rpm repo creation in that we don't rsync, ship, or generate
repo configs in this method, just run createrepo on all the dirs.
(CPR-56) Migrate rpm repo tasks into Pkg::Rpm::Repo

This commit moves the current tasks in tasks/rpm_repos.rake into the
Pkg::Rpm::Repo module. The old tasks now simply forward the request on
to the equivalent method call. This commit also includes a minimum of
refactoring.
(CPR-52) Add nightly_repos rake tasks

This commit is the first incantation of a task set to sign and ship
nightly repos. The main task nightly_repos, handles getting the repos
signed remotely, and then also ships and generates repo configs. As
many of the tasks as possible are ruby calls instead of rake task
invocations.