mail: functions now private and called in the initializer
fix typo
mail: send function moved to abstract class instead of being outside