the start of an actual api you might want to call
abandon the notion of using a reference queue for clean up
misc clean ups