Each feature is accessed through dedicated managers. These have several implementations according to the back-end store (for instance, memory or database).