dox
remove unneeded convenience functions
remove self-referential code; repurpose ~ form; implement ~@ form
update tests and changelog