add test data loader and fix bugs and data model issues that arose during implementing it