Refactored CartBundle

* Added more useful functional and unit tests
* Refactored managers, and uncoupling them a little bit more
* Uncoupled as much as possble all managers with ObjectManager
* Updated entity relation mapping definitions
    * Added orphanRemovals
    * Added properly all cascade definitions
* Added by default buildSchema in WebTestCase
* Fixed CartCoupon to work properly with these changes
* Added some minor tests in CartCouponBundle
* Passed php-cs-fixer
Added missing Money support in Coupon and CartCoupon

Fixtures were also adapted so that they can work with Money.
A Coupon now needs a Currency in order to specify an amount representing
a price. ElcodiCouponTypes::TYPE_AMOUNT|TYPE_PERCENT discriminates between
a fixed amount or a percent discount to be applied
Cart amounts are now calculated dynamically

Cart::amount, Cart::productAmount and Cart::couponAmount are
now unmapped properties. Their values are calculated dinamically by the
Cart event listeners. Consequently, there is no need for a mapped Currency
in the Cart entity.

Coupon amounts property and accessor methods where removed from PriceTrait,
since they are not used in AbstractLine
Money WIP