build: convenient shortcut for image with several modules

A previous patch made it possible to run "make image=rogue" when a
module rogue exists, without creating a images/rogue file.

This patch expands this feature to be even more powerful:

First, it allows choosing alternative command lines of a particular
module. For example:

        make image=mgmt.shell

Creates an image with the mgmt module (and its dependencies), and its
command line will be mgmt's "shell" command line (i.e., run just the
shell without the web server) instead of the "default" command line.

Second, instead of specifying just one module to put in the image (plus its
dependencies), we now allow giving a comma-separated list of unrelated
modules, all of which are put in the image. For example:

        make image=memcached,netperf,tests

The default command line of the image will be to run in parallel the
"default" command line of each of the modules, if it exists. In the above
example, the "tests" module has no command line labeled "default", so only
those of memcached and netperf will run, but tests' files will still be
included in the image.

As above, a non-default command line of the module can also be chosen,
for example:

        make image=memcached,mgmt.shell

Will build an image with the memcached and mgmt modules, and will run
in parallel memcached's "default" command line and mgmt's "shell"
command line.

If you want to include some module's files in the image, but not run
its command line, use the special word "none". For example:

        make image=memcached,netperf.none

will create an image with both memcached and netperf's files, but only
run memcached's command line.

Reviewed-by: Tomasz Grabiec <tgrabiec@gmail.com>
Signed-off-by: Nadav Har'El <nyh@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>