Fix profiler usage when not flagged

* Profiler is now close to a no-op when ```-p``` is not passed in
* The profiler's printing ```Timer``` now stops looping when the profiler is closed
* Most task ```Chan```s are now newtype ```struct```s
* Some more ```Cell``` removals in places where ```spawn_with``` is appropriate