Spike Timing Dependent Plasticity A Comprehensive Overview