Added models and data layer