Created hook for subclasses to record sent drips differently, optionally

Old behaviour remains the default.
Moved all Drip model behaviour and properties into AbstractBaseDripModel.

A Drip model remains as a default implementation of AbstractBaseDripModel and for backwards compatability reasons.
abstract QuerySetRule and factory functions for the default admin.