Dependency properties can now be bound to object properties with different types; lots of refactoring to enable conversions with as little GC as possible