[WIP] Signal<T> tests

But it turns out that types prevent a lot of errors that tests would normally catch! Who knew?
Could this just be `signal.observe(observedValue.append)`?