Handle "to" with deconstruction

This accepts "to" as kwarg, and provides it via `deconstruct`, and also
changes `deconstruct` to always provide/set "through".

This is more explicit and since the manager always uses a through model
internally, this describes it better.