Further abstraction of the data layer into a plug-and-play style module.