Putting all in order, adding comments to headers so i rememmber what they do