stage one of spiewakian refactors