hbal: handle empty node groups
hbal: handle empty node groups

This patch changes an internal assert (which can only be triggered
when a node group is empty) into properly handling this case (and
returning empty node/instance lists).

While we could handle this in the backend (Cluster.splitNodeGroup)
this would actually mean than we change the behaviour for a cluster
with just two node groups, once of which is empty (where today we
don't require a node group argument).

Signed-off-by: Iustin Pop <acf83a5274f31a43af6b914614365999469c1a31@google.com>
Reviewed-by: Michael Hanselmann <68b67885ff74281219b4a4be33cc20fd45078d7c@google.com>

grnet/snf-ganeti,leshchevds/ganeti,yiannist/ganeti,andir/ganeti,leshchevds/ganeti,apyrgio/snf-ganeti,leshchevds/ganeti,yiannist/ganeti,ganeti/ganeti,grnet/snf-ganeti,ganeti-github-testing/ganeti-test-1,bitemyapp/ganeti,onponomarev/ganeti,mbakke/ganeti,onponomarev/ganeti,ganeti/ganeti,dimara/ganeti,andir/ganeti,ganeti/ganeti,apyrgio/ganeti,dimara/ganeti,yiannist/ganeti,mbakke/ganeti,bitemyapp/ganeti,apyrgio/snf-ganeti,mbakke/ganeti,apyrgio/ganeti,andir/ganeti,ganeti-github-testing/ganeti-test-1