Handle inspect containers failures

Docker's client.inspect_container method may return None
if a container does not exist. As it is expected to be a
dictionary in several places in the docker driver, TypeErrors
may occur and raise unhandled Exceptions.

In the case of list_instances, this results in an
unhandled race-condition. There, we inspect a container
that existed when we begain assembling the list of instances
from the list of running containers, but containers have
been deleted and are no longer inspectable. This patch
will safely skip including those containers in the response
should their inspect_containers call return False.

Furthermore, as it is presumed the return of inspect_container will
be a dictionary, we change the result of a failed query into
an empty dictionary. This will allow successful .get() methods
for easier management of failed queries while still providing
a negative boolean response from the method ({} is False).

Change-Id: Iead7025efa024bed809640a37168174fc5354654
Closes-Bug: #1288940