Refactor to allow data store connection to be defined on a per object (e.g. User) basis