Reorganised code layout, moved NOOP into utils