Refactor Checkout

* Remove the inverse dependence on nereid_payment
* Use the payment_gateway modules
* Allow using payment profiles and storing credit card info
Merge pull request #18 from sharoonthomas/develop

Refactor Checkout
Bump version to 3.0.2.0dev1
Fixed flake8 issues
Merge pull request #20 from GauravButola/feature/task-4203

Fixed flake8 issues #4203
Refactoring for Flask-Login
Merge pull request #22 from sharoonthomas/develop

Refactoring for Flask-Login
Replace urls.xml with nereid(3.0.7.0) route
Merge pull request #26 from tarunbhardwaj/develop

Replace urls.xml with nereid(3.0.7.0) route
Release version 3.0.2.0
Merge branch 'release/3.0.2.0'
Merge branch 'release/3.0.2.0' into develop
Fixed saving of email for guest user while checkout #4442

Updated test for the same
Merge pull request #28 from tarunbhardwaj/develop

Fixed saving of email for guest user while checkout #4442
Move out actual payment processing from payment_method #4451

:gift: Moved actual payment processing code out of payment_method to
_process_payment method. So that other modules can easily modify
the behavior of processing payment independently.
Added coverage, coveralls and readme.rst
Merge pull request #30 from tarunbhardwaj/develop

Move out actual payment processing from payment_method #4451
Fixed guest access code for sale #4442

:beetle: Guest access code was created after sending email(confirming) for sale.
Infact access code should be created before sending email so that link
in email should also contain access_code for guest user.
Moved different payment_methods to sale #4366

Moved complete_using_credit_card, complete_using_profile
complete_using_alternate_payment_method to sale as instance methods
these methods can be used to process payment for sale alone without
misusing cart.
Removed unused file forms.py