runSignal and runSignalIO should use replay subjects
Remove Show typeclass from newReplaySubject

Accidentally added in a previous commit.
'start' should use a replay subject
Keep scheduler threads alive only as long as necessary
Added indefinite schedulers
Add Scheduler.Main for representing the main thread