add delay again
extract stuff into new headers
remove an unused struct