Refactor

many functional updates; would like to pull into praxes in advance of CHESS beam time for testing/implementation at F2.