DataManager, LocalDataSource & Associated stuff

I think that the DataManager & LocalDataSource stuff is working well enough that we can integrate it at least. Still needs more work, but the basic methods seem to be working correctly, if not in the most efficient way possible.
Hadn't noticed that to pull. It's internal to the QAModel class so I'll just accept your version when merging this in.