No need to override get_header.
self.data[0] will point to self.fields for ModelDataSource.
get_data() should only return the data, creation should be done
somewhere else. And should only be done from init once, else
everytime we internally call get_data(), entire creation process
would execute.
Merge pull request #7 from agiliq/refactor-modeldatasource

Refactor modeldatasource