Thanks mike, this is really helpful, right now pretty is not my main aim, I am pretty new to advanced msbuild having only done fairly basic scripts before now with my main function being a middleware developer :) However this has helped me out understanding target batching which I was scrabbling around with making work.
Obviously a property to "skipIfExists" is nice but hey thats not there yet and anything which helps me solve my aim is good. I shall endevour to look into this and try and work my solution around your suggestion :)