First commit with all the progress so far