Unidirectional link of traitlets

Similar to the `IPython.utils.traitlets.link` but for unidirectional links. 
Should this throw an error instead of failing silently?

In the sync case, we know that modifying the other traitlet will cause it to try to update this one again, and we know it's safe to ignore that. In a one way link, if something else tries to update this traitlet while we're propagating its value, it must mean the user has defined some kind of circular traitlet relationship, and it's not clear that it can be safely ignored.