[WIP] Handling scalars in LTC and JIT (#69771)
* Wrap scalars in lazy IR values
- handle scalars specially to avoid over-specializing lazy traces
- wrap them in IR values and feed them in as part of graph execution,
but don't recompile
* Handle pow use of scalar
* WIP optimize handling of scalar
- try using cpu tensor instead of cuda tensor to speed up .item() call inside jit interpreter
* WIP pass scalars to JIT interpreter, broke some tests
* Move TSData class so it can be seen from ts_lowering_context without changes to BackendData inferface
* remove implicit expand
* addcdiv
* fromCodegen for scalars
* get rid of devce param
* reinstate expand
* remove debug code
* clean up
* update comment
* add an edge case for scalar bools
* fix rebase
Co-authored-by: Will Constable <whc@fb.com>