Correct usage of GatewayFactory->create
Pass form data on to omnipay gateway

Let the gateway implementation decide what's relevant, rather than pre-filtering on gateway agnostic layers like PurchaseService
Organized classes into their own files

No functional changes