Implementation of Active Record Design Pattern.