Introduce a PromotionHandler namespace

There we can put classes resposible for triggering promotion logic in
specific spots of the code base. e.g. Cart when item is added to cart,
Coupon when customer submits a coupon code
Create PromotionRule for coupon codes

As the code is actually a requirement for make the promotion eligible
PromotionHandler::Cart scope only promotions with rules

And exclue promotion with a coupon code rule. The scope method may vary
depending on the rails application as each store may add its own
promotion rules