first pass at wrapping data access into repositories