I basically ended up doing what Jacob suggested. To deal with the extra members from "mixin Signal" by using the compiles trait to avoid the normal case for them. Thanks for the help. Paul