some cleanups in assignments
fixed some more bugs
added some signal model fixes
implemented self assignment