Creates and returns a new Provider that maps the value of this using the transform function.
transform should be a pure function.
The returned provider will only be stored in a WeakReference in the parent provider (this).