Adding waveform utils
completing simulation loop
completing simulation loop
First working implementation of the simulation