a Tiny Automatic Differentiation Library for understanding how neural networks works, implemented in pure Java