XD-1772/1804: no duplicate labels, remove unused parser code for substreams

This is mostly code removal that was previously in https://github.com/spring-projects/spring-xd/pull/916
 and the actual no-dupe-label logic in the last commit, as discussed with @markfisher

Name proposal instead of `getEffectiveLabel()`: `getModuleKey()` (although I don't like repeating "Module" in there, I think just `getKey()` may be confusing)