Added multiple new features and fixes to the invoicing gateway:
- Manual to avoid using direct debit directly
- CustomerByDocument to avoid passing the customer but use the mandate reference instead
Other changes include making the http layer an interface to improve testability