Creates the default relations and transfers tables. The SQL used may not work on all
    databases. (It was written for SQLite3)

def setup(self):
    """Creates the default relations and transfers tables. The SQL used may not work on all
    databases. (It was written for SQLite3)
    """
    cmds = [
      """
        create table if not exists relations (
          id integer not null primary key,
          name text not null unique,
          completed_at datetime
        );
      """,
      """
        create table if not exists transfers (
          relation_id integer not null references relations (id) on delete cascade,
          old_id text not null,
          new_id text,
          primary key (relation_id, old_id)
        );
      """,
      """
        create index if not exists transfers_relation_id_idx on transfers (relation_id);
      """
    ]

    for cmd in cmds:
      self.data_access.execute(cmd)
    self.data_access.commit()
    return self