fixed the over-fusing of parallel do nodes in the Optimiser. fixes #213
fixed also the execution of mappers in input channels so that it's simpler and values get only computed once
changed the definition of layers. They are now based on their output nodes which removes the heuristic for finding floating parallelDos