Fix report_status() to work for bash scripts

bash's builtin "echo" command does not get along with the color escape
sequences. Compare

  dash -c 'echo "foo \033[38;5;3mhello\033[m"'

with

  bash -c 'echo "foo \033[38;5;3mhello\033[m"'

Adjust report_status() to alwasy use "/bin/echo -e" instead.
debci-test: Add --print-output option to write output directory to stdout

With that the caller can easily check the result.
debci, tools/server.sh: Exec the target program

This avoids unnecessarily keeping the shell wrapper around it running all the
time, and also provides a better behaviour for SIGTERMing processes (as we
don't need to pass that to children).
Drop tools/convert-data

We only needed it for version 0.6, and we're going to need a different
conversion script after the next data/ dir reorganization.
Eliminiate $debci_data_dir

We'll soon reorganize the data directory where $debci_data_dir won't make much
sense any more. We want scripts to ask for a specific one like
$debci_packages_dir.
data/: Move category dirs to top-level, split suite and arch into separate dirs

Reorganize data directory to move the "categories" packages/, autopkgtest/,
status/, and feeds/ to the top level; they contain subdirs for all releases and
architectures. This makes autopkgtest/ fully rsyncable and also makes it easier
to the web UI to browse/present data for multiple releases and architectures.

Also split release-arch/ into release/arch/.
Add tools/convert-data-0.7

Script to convert data directory to changed format from "Move category dirs to
top-level, split suite and arch into separate dirs".

This assumes that there is only data/unstable-amd64, other releases/arches are
not supported (which is true for current production debci).
Fix debci-status -l if there is just one package

We were just outputting the status, instead of "packagename status", as we
would expect with -l/--all.

Add reproducer to test suite, and some checks that the status output is as
expected for multiple packages, too.
Add tests for debci-batch

These coverskipping/re-running of tests under appropriate conditions and
showing the cause for re-run in the log.

Add a status_dir_for_package() to test_helper.sh that works like the "real" one
in environment.sh, to avoid putting the knowledge of the data/ dir structure in
too many places.