Dave suggested some changes, so i implemented them - many more will come