Refactoring/Cleaning

I made refactoring in order to keep all classes simple (this code should be easier to read). I removed unnecessary code and made shorter methods.
I prepared tests to run it with robolectric. Use gradle localTest from library directory to execute all tests (results are available in app/build/reports/tests/index.html).