Add sale_condition_template

I moved this module from sale-workflow.  Displaying additional condition texts on sales reports is clearly a reporting module.

This module has been migrated from sale_condition_text, here is the original PR for the migration before I moved the module: https://github.com/OCA/sale-workflow/pull/50

This is still a WIP module because the report does not show the fields at the moment.

Depends on :

 * [ ] https://github.com/OCA/account-invoice-reporting/pull/14
 * [ ] https://github.com/OCA/account-invoice-reporting/pull/15
Pylint says with reason:
> sale_condition_template/sale_order.py:52: [W0102(dangerous-default-value), SaleOrder.action_invoice_create] Dangerous default value ['confirmed', 'done', 'exception'] as argument

How should we handle that as the same default value is defined in the `super` method in the keyword argument? If we send `None`, the `super` method will have `None` instead of `['confirmed', 'done', 'exception']`.
Ideally it should be fixed in the core by setting `None` by default and with this code at the start of the method:

    if states is None:
        states = ['confirmed', 'done', 'exception']

Now, in this module, I see 2 options:

A. None as sentinel and default value
```
def action_invoice_create(self, cr, uid, ids,
                          grouped=False,
                          states=None,
                          date_invoice=False, context=None):
    if states is None:
        states = ['confirmed', 'done', 'exception']
    _super = super(SaleOrder, self)
    inv_id = _super.action_invoice_create(cr, uid, ids,
                                          grouped=grouped,
                                          states=states,
                                          date_invoice=date_invoice,
                                          context=context)
```

B. Do not propagate the argument if not provided
```
def action_invoice_create(self, cr, uid, ids,
                          grouped=False,
                          states=None,
                          date_invoice=False, context=None):
    _super = super(SaleOrder, self)
    if states is None:
        inv_id = _super.action_invoice_create(cr, uid, ids,
                                              grouped=grouped,
                                              date_invoice=date_invoice,
                                              context=context)
    else:
        inv_id = _super.action_invoice_create(cr, uid, ids,
                                              grouped=grouped,
                                              states=states,
                                              date_invoice=date_invoice,
                                              context=context)
```

The option B. seems farfetched but it seems better to me because it does not duplicate the default value `['confirmed', 'done', 'exception']`.