When starting a container check the image id 

Initially when using the plugin we ran into problems where a old container based on a old image was used just because the name was the same as we were not doing a docker clean. We have since put a docker clean into the appropriate place in our life cycle but it took us a while to find the problem and checking that your not starting a container based on a old image might still have value, what do you think?

I have also refactored file operations into a new class to make unit testing easier as there were no unit tests for the DockerOrchestrator