JuTrack, a Julia-based auto-differentiable accelerator simulation code for advanced dynamics, scientific machine learning and optimization | Synapse