This is the first commit where I transfer everything over from the previous incompatible project.