frivolous meanderings. need to get primitives done first