Ensure Dynamo uses this graph's fakes for `Tensor` `example_value`s (#111954)
Summary:
Fixes https://github.com/pytorch/pytorch/issues/111869, Fixes (detailed list of cases handled): https://github.com/pytorch/pytorch/pull/111913#discussion_r1370267313, fully fixes: https://github.com/pytorch/pytorch/issues/111873
Adds sanity checks ensuring that Dynamo uses this graph's fakes for Tensor `example_values`
Handles the main (and only?) entrypoints for new `FakeTensor`s in a Dynamo graph:
- `wrap_fx_proxy_cls`
- `VariableTracker.wrap_tensor`
Ensures that `get_fake_value` returns a fake except when we know we are going to properly wrap non-fakes.
X-link: https://github.com/pytorch/pytorch/pull/111954
Approved by: https://github.com/ezyang
Reviewed By: izaitsevfb
Differential Revision: D50676041
fbshipit-source-id: 7142064c3b77da736d71db91f287df9e18579b5b