implemented a new interface to isolate methods needed by payment_engines
lets make a simpler interface for payment engine. Other than that we cannot trust class variables for concurrency in Rails AFAIK