add unit test project for Reasoning, and add some basic classess
Add IReasoning interface as fasade for whole library