Discrete-Time Concurrent Learning For System Identification And Applications: Leveraging Memory Usage For Good Learning