foundation for more modular saving to DB