Further work - refactoring general request parsing