[WIP] Signal<T> tests

But it turns out that types prevent a lot of errors that tests would normally catch! Who knew?
Bleh, at any rate outside the scope of this PR.