Fix recursive delete of host

When host.delete(recursive=True) is called, it would
previously delete all services that contained host.host_name.

Now deletion is slightly smarter, and if there is a service
with service.host_name="host_a,host_b" and host_a is deleted,
then only the reference to host_a is deleted, not the whole service.