Since we want to support framework's native optimizer methods and additional optimizer, we need to create optimizer wrapper that will apply optimization based on preferred defined optimizer by researcher.
Please see following diagram as a starting idea of the GenericOptimizer design.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information