DataConsumer class

refactored AlarmManager and WidgetManager to be derived from the
DataConsumer base class.
refactored DataManager to store and provide data subscription to
multiple dataConsumers