Signal<T> tests

But it turns out that types prevent a lot of errors that tests would normally catch! Who knew?
Mind you I think this failing to infer is probably a bug in the type system.