Initial refactor into final class based request objects