[LFTILI-17] dry-ed up some code by moving request creation and formation into class