improved implementation of RNNs and added `save_records` to push_monitor function.