lots of work towards a version 1