Add basic tests for the (non-existent so far) properties module
Implement AnimatedProperty
signals: Simplify per-instance sig directory with weakref.finalizer
signals: Use dict.pop instead of sorta reimplementing it

huh, I wonder how late it was when I came up with _dict_discard
Put property expressions in named boxes
Make sure AnimatedProperty expressions stay as Boxes
Add some tests for Boxes
expressions: Modify __repr__ and dump() to not crash on resursive expressions

A recursive expression can be created by putting a Box inside
itself (possibly indirectly).
Expression: Better hide replacement implementation
expressions: Expose coerce(), improve simplify() documentation
Add tests for setting properties to (values of) other properties
Implement setting expressions on properties (linking not there yet)