big commit of all recent work, very lax I know. Will do better.