A simple implementation of models, inspired by ember-data and js-data