Send out email only for cards that move into other lists

#### Some notes

I thought it was time to refactor a bit `CardsController`, since its responsibilities were about to grow (e.g. it would have known when to send out emails).

I clearly separated realtime from email sending, which should have nice side effects:

1. Group mail logic into one single class
2. Group realtime logic into one single class
3. Readability in the controller
4. Changing realtime logic, does not affect changing mail logic (and viceversa)

/cc: @exalted 
Hmmm… `MailSender < BaseSender` that cards can "subscribe" to?