Make Engine explicitly implement TensorTracker (#1488)
Make Engine explicitly implement TensorTracker (#1488)

INTERNAL
Fix by Martin Probst.

Previously, Engine would only structurally match TensorTracker, by
implementing the right methods. This works on the TypeScript level, but
fails when compiling with Closure Compiler. The optimizer never sees an
assignment of an `Engine` type into a `TensorTracker` due to the
indirection in the code, and then removes and disambiguates properties
incorrectly. This is a known limitation of Closure Compiler.

The fix to explicitly implement the interface that's used to
refer to the type, and Closure Compiler is aware of the property
use/name collision.

tensorflow/tfjs,tensorflow/tfjs-core,tensorflow/tfjs,tensorflow/tfjs,tensorflow/tfjs-core,tensorflow/tfjs,tensorflow/tfjs,tensorflow/tfjs-core,tensorflow/tfjs-core,tensorflow/tfjs-core,tensorflow/tfjs,tensorflow/tfjs,tensorflow/tfjs,tensorflow/tfjs-core,tensorflow/tfjs