Note that the readme is currently acting as a design document