Better structure, added DataContainer class