remove from argumet to cleanFrom
extract sequential dependent bits into functions to be overridden by child constructors
move beforeStartOut functionality to children
move beforeDoneIn functionality to child constructor prototype
move beforeDoneOut functionality to child constructor prototype
whitespace and a note about the transition function