docker commit --change support

Replaces #8332 fixing an issue with returning a hard error when there is an invalid command for commit.


a bool is smaller and we do use the value as non existent values eval to `false` because `if _, ok := map["something"] {` is not as clean as `if map["something"] {`