Be less strict and more granular when defining inconsistent version
Created by: scarlehoff
Right now if any version for any of the programs versioned changes between two replicas, that will means all of the programs are set as "version inconsistent".
This change makes it a bit less restrictive and checks program by program. This is relevant because tensorflow can respond with mkl=on or off depending on whether the computer has the right libraries available so the version of tf would be inconsistent while everything else is actually ok.