working on data model, optimizing and organizing and shit