Added migration and fix script bugs around schema creation
Refactor - extract SARepo
Extract base class for inmemory repositories
Check constraints dynamically
Use a more generic query interface on Repo
In-memory repository implements query
move blocks
Extracted superclass
Use methods instead of classes