refactored request into its own file / class.