Changed Record
  added toArray() with recursive flag
  added fromArray() with recursive flag