Merge pull request #2 from prvn/master

data provider interface and test data provider implementation
MVC architecture
Merge pull request #3 from ajkl/version_0

MVC architecture
Restructuring some code. No functionality changes