Designing an access layer for SQLite