Simplifies docker interfaces to minimum adds dockercmd interface ability fix some minor problems in tests

There shouldn't be any conflict with changes in docker documentation. 

Simplifies docker interface mechanism from object composition to
module global variable assignation.
Adds variables in defaults.ini to set default test interface.

   default_container_iface = cli
   default_images_iface = cli
   default_dockercmd_iface = cli

example how to change default interface in whole test:
module global variable DockerImages

images.DockerImage = new interface class.

Actually these changes should __always__ be part of the big pull request which implements the new feature. And if it was added later, then it should be fixed during review. To know about these kind of things the autotest weekly meetings were very useful as we got together and get the new features and changes at one place.

I don't say it's the only way, but IMO for quite small team it's the easiest one. Another approach would be to generate release news as kernel does. (new features, new tests, configuration changes and changes visible to developers...)