Merge pull request #22 from CompassionCH/usability-improvements

Usability improvements
Improve the Manual Reconciliation Process by:

- Adding buttons for opening custom wizards
- Adding button for opening current partner

Fixes:

- Related contracts in reconcile wizards not
  properly retrieved.
Improvements on the contract views.

- [FIX] A simplified tree view in module reconcile_compassion was
        overwriting normal tree views. Now it is a separate view.
- [ADD] Frequency in contract tree view
- [ADD] Contracts in partner view are sorted on start_date
- [ADD] Contracts in partner view can be opened on current window.
- [FIX] PEP8 errors.
Added buttons to go to transactions and unreconciled move_lines from the
invoice view, to ease the verification of generated invoices in
account_statement_completion_compassion module.
[NEW] Added a wizard to generate Gift Invoices from an active contract.

It can be useful when a sponsor used a sponsorship reference in order
to pay for a gift. In this case, the user is able to create a gift
invoice in order to reconcile the credit.
Removed dependency on module account_banking_payment.

Extracted the ability to filter invoices collected in payment order by
payment term from the module account_banking_payment and included it
in module lsv_compassion, so that we can remove dependency which avoids
installing a lot of functionalities we don't use, and avoids installing
module account_banking which brings a lot of mess in accounting views.
PEP8 + headers correction on module lsv_compassion
Small bug fix.
New clean_invoices method that takes care of invoices paid in advance.

When a contract is cancelled, if there are paid invoices in advance by
the sponsor, it will :
	- cancel them
	- remove the invoice_line of contract
	- split payment and reconcile if possible
	- if not possible, put a move_line name that will warn the person
	  doing the manual reconcile.
Corrections on contracts cancellation.

- Invoices cancelled keep their lines so that we can see what was
  the invoice.
- Several bug fixes.
- Start date can be rewinded if the contract is in draft state.
Sponsorship validation improvement

- [ADD] Verify that a valid mandate exists for LSV,DD contracts
compassion.child.property.value -> compassion.translated.value
deleted unnecessary files
Small code improvements.

- Refactor of case_study variable to json_data
- Add context to some methods
New module for pushing contracts to GP.
Addition of information to sync contracts with GP.

- Exit details for children based on REST webservice GetExitDetails.
- State for children
- End reasons for contracts
Synchronization improvements and bug fixes.

- Changed the state view on the child
- Contract is now pushed as soon as it is created so that we can access it for sending a mailing to the sponsor from GP.
- Contract is updated when it is validated (to know when will be the first payment).
- Added various security checks to avoid synchronization errors
- Contract are update also when a group is modified
- Code refactoring
BVR ref is set in GP even for LSV,DD contract groups.

- [NEW] BVR ref is always set in GP
- [FIX] CODESPE can be empty in draft state, must be set before validating
  	a contract.
- PEP8 corrections
New wizard for cancelling contracts.

Instead of directly cancelling contracts, a wizard asks for ending reason
and will update child status and everything (must still be implemented).
Improved end sponsorship wizard.